# Read phenotypes
phenos <- lapply(LETTERS[1:4], function(x) {
sprintf("Phenotypes_screen_%s.txt", x)
})
phenos <- lapply(phenos, function(x) {
Phenotypes(system.file("extdata", x, package="gespeR"),
type = "SSP",
col.id = 1,
col.score = 2)
})
phenos
plot(phenos[[1]])
# Read target relations
tr <- lapply(LETTERS[1:4], function(x) {
sprintf("TR_screen_%s.rds", x)
})
tr <- lapply(tr, function(x) {
TargetRelations(system.file("extdata", x, package="gespeR"))
})
tr[[1]]
tempfile <- paste(tempfile(pattern = "file", tmpdir = tempdir()), ".rds", sep="")
tr[[1]] <- unloadValues(tr[[1]], writeValues = TRUE, path = tempfile)
tr[[1]]
tr[[1]] <- loadValues(tr[[1]])
tr[[1]]
# Fit gespeR models with cross validation
res.cv <- lapply(1:length(phenos), function(i) {
gespeR(phenotypes = phenos[[i]],
target.relations = tr[[i]],
mode = "cv",
alpha = 0.5,
ncores = 1)
})
summary(res.cv[[1]])
res.cv[[1]]
plot(res.cv[[1]])
# Extract scores
ssp(res.cv[[1]])
gsp(res.cv[[1]])
head(scores(res.cv[[1]]))
# Fit gespeR models with stability selection
res.stab <- lapply(1:length(phenos), function(i) {
gespeR(phenotypes = phenos[[i]],
target.relations = tr[[i]],
mode = "stability",
nbootstrap = 100,
fraction = 0.67,
threshold = 0.75,
EV = 1,
weakness = 0.8,
ncores = 1)
})
summary(res.stab[[1]])
res.stab[[1]]
plot(res.stab[[1]])
# Extract scores
ssp(res.stab[[1]])
gsp(res.stab[[1]])
head(scores(res.stab[[1]]))
# Compare concordance between stability selected GSPs and SSPs
conc.gsp <- concordance(lapply(res.stab, gsp))
conc.ssp <- concordance(lapply(res.stab, ssp))
pl.gsp <- plot(conc.gsp) + ggtitle("GSPs\n")
pl.ssp <- plot(conc.ssp) + ggtitle("SSPs\n")
if (require(grid)) {
grid.newpage()
pushViewport(viewport(layout = grid.layout(1, 2) ) )
print(pl.gsp, vp = viewport(layout.pos.row = 1, layout.pos.col = 1))
print(pl.ssp, vp = viewport(layout.pos.row = 1, layout.pos.col = 2))
} else {
plot(pl.gsp)
plot(pl.ssp)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.