Setup phase: Install and load relevant packages

if (!require("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install()
BiocManager::version()
BiocManager::install("remotes", dependencies = TRUE)
BiocManager::install("waldronlab/bugSigSimple")

Load bugSigSimple and bugSigDB

#library(bugSigDB)
library (bugSigSimple)

Read curation file

dat <- bugsigdbr::importBugSigDB()
dim(dat)

Subset all signatures by curator and condition

my.dat <- subsetByCurator(dat, curator="Fatima Zohra")
table(my.dat[,"Condition"])
condsnew <-c("bipolar disorder","unipolar depression")
condsnew <-c("bipolar disorder")

efo <- bugsigdbr::getOntology("efo")
dat.bpd <- bugsigdbr::subsetByOntology(dat, column = "Condition", "bipolar disorder", efo)
dat.upd <- bugsigdbr::subsetByOntology(dat, column = "Condition", "unipolar depression", efo)
my.dat.cond <- rbind(dat.bpd, dat.upd)
table(my.dat.cond[,"Condition"])

Overall frequencies of taxa increased and decreased in cases

getMostFrequentTaxa(my.dat.cond,n=30)
getMostFrequentTaxa(my.dat.cond,, direction="UP")
getMostFrequentTaxa(my.dat.cond,, direction="DOWN")

Binomial test "Increased in Cases"

binom.test(x=4, n=6)
binom.test(x=4, n=4)
binom.test(x=4, n=4)
binom.test(x=4, n=5)
binom.test(x=4, n=5)
binom.test(x=3, n=4)
binom.test(x=3, n=5)
binom.test(x=3, n=3)
binom.test(x=3, n=3)
binom.test(x=3, n=4)

Binomial test "Decreased in Cases"

binom.test(x=7, n=8)
binom.test(x=6, n=6)
binom.test(x=4, n=5)
binom.test(x=4, n=5)
binom.test(x=3, n=5)
binom.test(x=3, n=5)
binom.test(x=2, n=6)
binom.test(x=2, n=2)
binom.test(x=2, n=3)
binom.test(x=2, n=2)

Adjusting p value by Bonferroni correction

pvals <- c(0.6875, 0.125, 0.375, 0.625, 1, 0.25, 0.07031, 0.03125, 0.6875, 0.5)
adj.pvals <- p.adjust(pvals, method="bonferroni")
adj.pvals

Subset only on bipolar disorder

ind <- my.dat.cond[,"Condition"] %in% c("bipolar disorder")
my.dat.mdd <- my.dat.cond[!ind,]
dim(my.dat.mdd)
table(my.dat.mdd[,"Condition"])

getMostFrequentTaxa(my.dat.mdd, n=20)
getMostFrequentTaxa(my.dat.mdd,sig.type= "increased")
getMostFrequentTaxa(my.dat.mdd,sig.type= "decreased")

Binomial test "Increased in bipolar"

binom.test(x=3, n=3)
binom.test(x=3, n=3)
binom.test(x=3, n=4)
binom.test(x=2, n=4)
binom.test(x=2, n=3)
binom.test(x=2, n=2)
binom.test(x=2, n=4)
binom.test(x=2, n=3)
binom.test(x=2, n=4)
binom.test(x=2, n=2)

Binomial test "decreased in bipolar"

binom.test(x=4, n=5)
binom.test(x=4, n=4)
binom.test(x=4, n=5)
binom.test(x=3, n=5)
binom.test(x=2, n=4)
binom.test(x=2, n=4)
binom.test(x=2, n=4)
binom.test(x=2, n=4)
binom.test(x=2, n=2)
binom.test(x=2, n=2)

Adjusting p value by FDR correction for BD

pvals <- c(0.6875, 0.125, 0.375, 0.625, 1, 0.25, 0.07031, 0.03125, 0.6875, 0.5)
adj.pvals <- p.adjust(pvals, method="fdr")
adj.pvals

Subset only on MDD

ind <- my.dat.cond[,"Condition"] %in% c("unipolar depression")
my.dat.bd <- my.dat.cond[!ind,]
dim(my.dat.bd)
table(my.dat.bd[,"Condition"])

getMostFrequentTaxa(my.dat.bd, n=20)
getMostFrequentTaxa(my.dat.bd,, direction="UP")
getMostFrequentTaxa(my.dat.bd,, direction="DOWN")

Binomial test increased in MDD w/out MHT

binom.test(x=4, n=4)
binom.test(x=4, n=4)
binom.test(x=4, n=4)
binom.test(x=2, n=2)
binom.test(x=2, n=2)
binom.test(x=2, n=2)
binom.test(x=2, n=3)
binom.test(x=1, n=2)

Binomial test decreased in MDD w/out MHT

binom.test(x=4, n=5)
binom.test(x=4, n=4)
binom.test(x=4, n=5)
binom.test(x=3, n=5)
binom.test(x=2, n=4)
binom.test(x=2, n=4)
binom.test(x=2, n=4)
binom.test(x=2, n=4)
binom.test(x=2, n=2)
binom.test(x=2, n=2)

Faecalibacterium plot

taxa.mdd <- c(up=1/7, down=4/7)
taxa.bd <- c(up=0/4, down=3/4)
barplot(rbind(taxa.mdd, taxa.bd), beside=TRUE, col=c("red","blue"), legend=TRUE, args.legend=list(x="topleft", legend=c("major depressive disorder", "bipolar disorder")), ylab="relative frequency", main="Frequency of Faecalibacterium")

Actinobacteria plot

taxa.mdd <- c(up=2/7, down=2/7)
taxa.bd <- c(up=2/4, down=0/4)
barplot(rbind(taxa.mdd, taxa.bd), beside=TRUE, col=c("red","blue"), legend=TRUE, args.legend=list(x="topright", cex = 0.70, legend=c("major depressive disorder", "bipolar disorder")), ylab="relative frequency", main="Frequency of Actinobacteria")

Bacteroides plot

taxa.mdd <- c(up=2/7, down=2/7)
taxa.bd <- c(up=0/4, down=2/4)
barplot(rbind(taxa.mdd, taxa.bd), beside=TRUE, col=c("red","blue"), legend=TRUE, args.legend=list(x="topleft", cex = 0.80, legend=c("major depressive disorder", "bipolar disorder")), ylab="relative frequency", main="Frequency of Bacteroides")

Ruminococcaceae plot

taxa.mdd <- c(up=0/7, down=4/7)
taxa.bd <- c(up=0/4, down=2/4)
barplot(rbind(taxa.mdd, taxa.bd), beside=TRUE, col=c("red","blue"), legend=TRUE, args.legend=list(x="topleft", cex = 0.75, legend=c("major depressive disorder", "bipolar disorder")), ylab="relative frequency", main="Frequency of Ruminococcaceae")


waldronlab/bugSigSimple documentation built on Feb. 1, 2024, 12:22 a.m.