1 |
mir.db |
|
org |
|
fg |
|
bg |
|
col |
|
plot |
|
cutoff |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | ##---- Should be DIRECTLY executable !! ----
##-- ==> Define data, use random,
##-- or do help(data=index) for the standard data sets.
## The function is currently defined as
function (mir.db = c("targetscandb", "microRNA"), org = c("mmu",
"hsa"), fg, bg, col = "Symbol", plot = TRUE, cutoff)
{
require("plyr")
if (!((org == "mmu" | org == "hsa") & (mir.db == "targetscandb" |
mir.db == "microRNA"))) {
stop("Allowed values for org = hsa or mmu\n Allowed values for mir.db = targetscandb or microRNA")
}
mir.db = get(paste(mir.db, org, sep = "."))
if (is.na(cutoff)) {
mir.db = mir.db
}
else if ("context..score" %in% colnames(mir.db)) {
mir.db = mir.db[which(mir.db$context..score <= cutoff |
is.na(mir.db$context..score)), ]
}
else if ("mirsvr_score" %in% colnames(mir.db)) {
mir.db = mir.db[which(mir.db$mirsvr_score <= cutoff |
is.na(mir.db$mirsvr_score)), ]
}
ftest.results = data.frame()
ftest.results = rbind(ftest.results, ddply(.data = mir.db,
.variables = "miRNA", .fun = function(x) ftest.fun(x,
fg = fg, bg = bg, col = col)))
ftest.results$pvalue.adj = p.adjust(p = ftest.results$pvalue,
method = "fdr")
ftest.results = ftest.results[order(ftest.results$pvalue),
]
if (plot) {
require("ggplot2")
ftest.results.sub = ftest.results[which(ftest.results$pvalue.adj <
0.05), ]
ftest.results.sub$miRNA = factor(ftest.results.sub$miRNA,
levels = rev(ftest.results.sub$miRNA))
p <- ggplot(data = ftest.results.sub, aes(x = miRNA,
y = Foreground.Present, fill = pvalue.adj)) + geom_bar(stat = "identity") +
coord_flip() + theme(axis.text.y = element_text(color = "black",
size = 12), axis.text.x = element_text(color = "black",
size = 12), legend.text = element_text(color = "black",
size = 12), legend.title = element_text(color = "black",
size = 12), axis.title.x = element_text(color = "black",
size = 14), axis.title.y = element_text(color = "black",
size = 14), plot.title = element_text(color = "black",
size = 16)) + ggtitle("Enriched miRNA P.Adj<0.05\n") +
ylab("\nGenes in Foreground") + xlab("miRNA\n")
print(p)
}
return(ftest.results)
}
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.