Here we will run test enrichment analysis approaches for understanding the effect of elevated homocysteine on blood methylomes. Homocysteine is thought to be an inhibitor of methyltransferases and hyperhomocysteine is associated with overall reduced genomic methylation. Previously we analysed the B-PROOF study data which enabled us to identify probes whose methylation correlatesor anti-correlated with homocysteine level.
The two enrichment analysis approaches we will use are:
gsameth
: an ORA approach that addressed the biases inherent with infinium array analysis.
gmea
: an experimental application of functional class scoring for infinium analysis.
suppressPackageStartupMessages({
library("missMethyl")
library("kableExtra")
library("mitch")
library("eulerr")
library("IlluminaHumanMethylation450kmanifest")
library("IlluminaHumanMethylation450kanno.ilmn12.hg19")
library("tictoc")
})
CORES=12
Load the data.
dm <- read.table("dma3a.tsv")
rownames(dm) <- dm$Row.names
dm$Row.names=NULL
head(dm, 10) %>% kbl() %>% kable_paper("hover", full_width = F)
UCSC_RefGene_Name | Regulatory_Feature_Group | logFC | AveExpr | t | P.Value | adj.P.Val | B | |
---|---|---|---|---|---|---|---|---|
cg04905210 | POLR3D | -0.2926788 | -2.8124509 | -5.380966 | 2.0e-07 | 0.1002013 | 5.906039 | |
cg09338148 | Unclassified | -0.2938597 | -1.1554749 | -5.114443 | 8.0e-07 | 0.1744820 | 4.880538 | |
cg04247967 | -0.2070451 | 3.1805934 | -4.986000 | 1.5e-06 | 0.2090211 | 4.399278 | ||
cg06458106 | -0.1906572 | 1.6757406 | -4.793141 | 3.5e-06 | 0.2413324 | 3.693145 | ||
cg26425904 | OCA2 | Unclassified | -0.2540917 | -4.0195146 | -4.761482 | 4.0e-06 | 0.2413324 | 3.579161 |
cg19590707 | SLC16A3;SLC16A3;SLC16A3 | Promoter_Associated | -0.2471850 | -1.2377016 | -4.716409 | 4.9e-06 | 0.2413324 | 3.417844 |
cg10746622 | PRSSL1 | -0.1995897 | 1.5613271 | -4.709610 | 5.1e-06 | 0.2413324 | 3.393607 | |
cg09762242 | SIPA1;SIPA1 | Promoter_Associated | -0.2092570 | -2.5239893 | -4.707037 | 5.1e-06 | 0.2413324 | 3.384441 |
cg11257888 | RCAN3 | 0.2775245 | 0.4917805 | 4.677660 | 5.8e-06 | 0.2413324 | 3.280067 | |
cg03622371 | P2RY6;P2RY6;P2RY6;P2RY6 | Unclassified | -0.2422774 | -1.6613396 | -4.670158 | 6.0e-06 | 0.2413324 | 3.253486 |
Reactome pathways were downloaded on the 14th Sept 2023 from MsigDB.
gs_entrez <- gmt_import("c2.cp.reactome.v2023.1.Hs.entrez.gmt")
gs_symbols <- gmt_import("c2.cp.reactome.v2023.1.Hs.symbols.gmt")
Now perform ORA analysis using gsameth with the top 500 probes.
sigup <- rownames(head(subset(dm,logFC>0),1000))
sigdn <- rownames(head(subset(dm,logFC<0),1000))
tic()
gsaup <- gsameth(sig.cpg=head(sigup,500), all.cpg=rownames(dm), collection=gs_entrez)
## All input CpGs are used for testing.
gsadn <- gsameth(sig.cpg=head(sigdn,500), all.cpg=rownames(dm), collection=gs_entrez)
## All input CpGs are used for testing.
toc()
## 21.951 sec elapsed
gsaup <- gsaup[order(gsaup$P.DE),]
head(gsaup,10) %>% kbl(caption="Top hypermethylated pathways") %>% kable_paper("hover", full_width = F)
N | DE | P.DE | FDR | |
---|---|---|---|---|
REACTOME_INTERLEUKIN_21_SIGNALING | 9 | 4 | 0.0000411 | 0.0446841 |
REACTOME_INTERLEUKIN_20_FAMILY_SIGNALING | 26 | 5 | 0.0000729 | 0.0446841 |
REACTOME_INTERLEUKIN_6_SIGNALING | 11 | 4 | 0.0000810 | 0.0446841 |
REACTOME_TNF_RECEPTOR_SUPERFAMILY_TNFSF_MEMBERS_MEDIATING_NON_CANONICAL_NF_KB_PATHWAY | 16 | 4 | 0.0002746 | 0.0938804 |
REACTOME_TNFR2_NON_CANONICAL_NF_KB_PATHWAY | 94 | 8 | 0.0003248 | 0.0938804 |
REACTOME_INTERFERON_ALPHA_BETA_SIGNALING | 64 | 7 | 0.0003406 | 0.0938804 |
REACTOME_INTERLEUKIN_9_SIGNALING | 7 | 3 | 0.0005343 | 0.1262406 |
REACTOME_SIGNALING_BY_SCF_KIT | 43 | 6 | 0.0008023 | 0.1658711 |
REACTOME_INTERLEUKIN_6_FAMILY_SIGNALING | 24 | 4 | 0.0010462 | 0.1742183 |
REACTOME_CYTOKINE_SIGNALING_IN_IMMUNE_SYSTEM | 687 | 26 | 0.0010533 | 0.1742183 |
gsadn <- gsadn[order(gsadn$P.DE),]
head(gsadn,10) %>% kbl(caption="Top hypomethylated pathways") %>% kable_paper("hover", full_width = F)
N | DE | P.DE | FDR | |
---|---|---|---|---|
REACTOME_SYNTHESIS_OF_BILE_ACIDS_AND_BILE_SALTS_VIA_27_HYDROXYCHOLESTEROL | 15 | 3 | 0.0017137 | 1 |
REACTOME_THROMBIN_SIGNALLING_THROUGH_PROTEINASE_ACTIVATED_RECEPTORS_PARS | 32 | 4 | 0.0057943 | 1 |
REACTOME_BLOOD_GROUP_SYSTEMS_BIOSYNTHESIS | 21 | 3 | 0.0060334 | 1 |
REACTOME_SYNTHESIS_OF_BILE_ACIDS_AND_BILE_SALTS_VIA_7ALPHA_HYDROXYCHOLESTEROL | 24 | 3 | 0.0060442 | 1 |
REACTOME_TRANSPORT_OF_NUCLEOTIDE_SUGARS | 8 | 2 | 0.0083146 | 1 |
REACTOME_PASSIVE_TRANSPORT_BY_AQUAPORINS | 13 | 2 | 0.0108103 | 1 |
REACTOME_LINOLEIC_ACID_LA_METABOLISM | 7 | 2 | 0.0108640 | 1 |
REACTOME_PRE_NOTCH_PROCESSING_IN_GOLGI | 18 | 3 | 0.0158030 | 1 |
REACTOME_CELL_SURFACE_INTERACTIONS_AT_THE_VASCULAR_WALL | 131 | 7 | 0.0158418 | 1 |
REACTOME_G_ALPHA_12_13_SIGNALLING_EVENTS | 71 | 6 | 0.0180446 | 1 |
Now with GMEA.
Start with gathering the annotation set.
ann450k <- getAnnotation(IlluminaHumanMethylation450kanno.ilmn12.hg19)
myann <- data.frame(ann450k[,c("UCSC_RefGene_Name","Regulatory_Feature_Group")])
promoters <- grep("Prom",myann$Regulatory_Feature_Group)
Histogram of limma t-statistics.
dm <- dm[,c("UCSC_RefGene_Name","t")]
hist(dm$t,breaks=seq(from=-6,to=6,by=1)) ; grid()
Aggregate probe t-scores to gene level scores.
The object generated has two parts:
df
: a simple table of the gene name and the median tvalue
gme_res_df
: results of 1-sample Wilcox test.
agg <- function(dm,cores=1) {
gn <- unique(unlist(strsplit( dm$UCSC_RefGene_Name ,";")))
gnl <- strsplit( dm$UCSC_RefGene_Name ,";")
gnl <- mclapply(gnl,unique,mc.cores=cores)
dm$UCSC_RefGene_Name <- gnl
l <- mclapply(1:nrow(dm), function(i) {
a <- dm[i,]
len <- length(a[[1]][[1]])
tvals <- as.numeric(rep(a[2],len))
genes <- a[[1]][[1]]
data.frame(genes,tvals)
},mc.cores=cores)
df <- do.call(rbind,l)
gme_res <- mclapply( 1:length(gn), function(i) {
g <- gn[i]
tstats <- df[which(df$genes==g),"tvals"]
myn <- length(tstats)
mymean <- mean(tstats)
mymedian <- median(tstats)
wtselfcont <- wilcox.test(tstats)
res <- c("gene"=g,"nprobes"=myn,"mean"=mymean,"median"=mymedian,
"p-value(sc)"=wtselfcont$p.value)
} , mc.cores=cores )
gme_res_df <- do.call(rbind, gme_res)
rownames(gme_res_df) <- gme_res_df[,1]
gme_res_df <- gme_res_df[,-1]
tmp <- apply(gme_res_df,2,as.numeric)
rownames(tmp) <- rownames(gme_res_df)
gme_res_df <- as.data.frame(tmp)
gme_res_df$sig <- -log10(gme_res_df[,4])
gme_res_df <- gme_res_df[order(-gme_res_df$sig),]
gme_res_df$`fdr(sc)` <- p.adjust(gme_res_df$`p-value(sc)`)
out <- list("df"=df,"gme_res_df"=gme_res_df)
return(out)
}
tic()
dmagg <- agg(dm,cores=CORES)
toc()
## 48.805 sec elapsed
head(dmagg$gme_res_df) %>% kbl(caption="top gmea genes (Wilcox)") %>% kable_paper("hover", full_width = F)
nprobes | mean | median | p-value(sc) | sig | fdr(sc) | |
---|---|---|---|---|---|---|
TNXB | 531 | 0.3419073 | 0.4168675 | 0 | 13.96422 | 0e+00 |
PCDHA1 | 162 | -0.7098305 | -0.6269170 | 0 | 13.62040 | 0e+00 |
NNAT | 49 | -0.9402128 | -0.9282012 | 0 | 13.30331 | 0e+00 |
PCDHA2 | 149 | -0.7203157 | -0.6349524 | 0 | 12.58353 | 0e+00 |
PCDHA3 | 141 | -0.7202342 | -0.6349524 | 0 | 11.67327 | 0e+00 |
KCNQ1DN | 39 | -1.6122306 | -1.7196789 | 0 | 11.43914 | 1e-07 |
Does 1-sample t-test work better?
agg2 <- function(dm,cores=1) {
gn <- unique(unlist(strsplit( dm$UCSC_RefGene_Name ,";")))
gnl <- strsplit( dm$UCSC_RefGene_Name ,";")
gnl <- mclapply(gnl,unique,mc.cores=cores)
dm$UCSC_RefGene_Name <- gnl
l <- mclapply(1:nrow(dm), function(i) {
a <- dm[i,]
len <- length(a[[1]][[1]])
tvals <- as.numeric(rep(a["t"],len))
genes <- a[[1]][[1]]
data.frame(genes,tvals)
},mc.cores=cores)
df <- do.call(rbind,l)
keep <- names(which(table(df$genes)>1))
df <- df[df$genes %in% keep,]
gn <- unique(df$genes)
gme_res <- lapply( 1:length(gn), function(i) {
g <- gn[i]
tstats <- df[which(df$genes==g),"tvals"]
myn <- length(tstats)
mymean <- mean(tstats)
mymedian <- median(tstats)
tselfcont <- t.test(tstats)
res <- c("gene"=g,"nprobes"=myn,"mean"=mymean,"median"=mymedian,
"p-value(sc)"=tselfcont$p.value)
} )
gme_res_df <- do.call(rbind, gme_res)
rownames(gme_res_df) <- gme_res_df[,1]
gme_res_df <- gme_res_df[,-1]
tmp <- apply(gme_res_df,2,as.numeric)
rownames(tmp) <- rownames(gme_res_df)
gme_res_df <- as.data.frame(tmp)
gme_res_df$sig <- -log10(gme_res_df[,4])
gme_res_df <- gme_res_df[order(-gme_res_df$sig),]
gme_res_df$`fdr(sc)` <- p.adjust(gme_res_df$`p-value(sc)`)
out <- list("df"=df,"gme_res_df"=gme_res_df)
return(out)
}
tic()
dmagg2 <- agg2(dm,cores=CORES)
toc()
## 91.983 sec elapsed
head(dmagg2$gme_res_df) %>% kbl(caption="top gmea genes (t-test)") %>% kable_paper("hover", full_width = F)
nprobes | mean | median | p-value(sc) | sig | fdr(sc) | |
---|---|---|---|---|---|---|
KCNQ1DN | 39 | -1.6122306 | -1.7196789 | 0 | 16.49357 | 0 |
NNAT | 49 | -0.9402128 | -0.9282012 | 0 | 16.23510 | 0 |
PCDHA1 | 162 | -0.7098305 | -0.6269170 | 0 | 15.72873 | 0 |
MESTIT1 | 59 | -0.7582612 | -0.8084278 | 0 | 14.66640 | 0 |
PCDHA2 | 149 | -0.7203157 | -0.6349524 | 0 | 14.41496 | 0 |
TNXB | 531 | 0.3419073 | 0.4168675 | 0 | 14.23694 | 0 |
This results shows that wilcox test executes faster but 1-sample t-test gives more significant findings.
Check that the distribution is even.
hist(dmagg2$gme_res_df$median,breaks=30) ; grid()
There could be a directional bias, so I will also conduct a 1-sample t-test.
ttenrich <- function(m,genesets,cores=1) {
res <- mclapply( 1:length(genesets), function(i) {
gs <- genesets[i]
name <- names(gs)
n_members <- length(which(rownames(m) %in% gs[[1]]))
if ( n_members > 4 ) {
tstats <- m[which(rownames(m) %in% gs[[1]]),]
myn <- length(tstats)
mymean <- mean(tstats)
mymedian <- median(tstats)
wt <- t.test(tstats)
res <- c(name,myn,mymean,mymedian,wt$p.value)
}
} , mc.cores = cores)
res_df <- do.call(rbind, res)
rownames(res_df) <- res_df[,1]
res_df <- res_df[,-1]
colnames(res_df) <- c("n_genes","t_mean","t_median","p.value")
tmp <- apply(res_df,2,as.numeric)
rownames(tmp) <- rownames(res_df)
res_df <- tmp
res_df <- as.data.frame(res_df)
res_df <- res_df[order(res_df$p.value),]
res_df$logp <- -log10(res_df$p.value )
res_df$fdr <- p.adjust(res_df$p.value,method="fdr")
res_df[order(abs(res_df$p.value)),]
return(res_df)
}
tic()
tres <- ttenrich(m=m,genesets=gs_symbols)
toc()
## 1.171 sec elapsed
head(tres,30) %>%
kbl(caption = "Top significant genesets") %>%
kable_paper("hover", full_width = F)
n_genes | t_mean | t_median | p.value | logp | fdr | |
---|---|---|---|---|---|---|
REACTOME_METABOLISM_OF_RNA | 457 | 0.2559801 | 0.3620978 | 0.0000000 | 8.885050 | 0.0000017 |
REACTOME_SRP_DEPENDENT_COTRANSLATIONAL_PROTEIN_TARGETING_TO_MEMBRANE | 82 | 0.5311678 | 0.4434600 | 0.0000000 | 8.651174 | 0.0000017 |
REACTOME_EUKARYOTIC_TRANSLATION_INITIATION | 87 | 0.5107556 | 0.4849303 | 0.0000000 | 8.163993 | 0.0000027 |
REACTOME_NONSENSE_MEDIATED_DECAY_NMD | 83 | 0.5044973 | 0.4749432 | 0.0000000 | 8.141000 | 0.0000027 |
REACTOME_TRANSLATION | 197 | 0.3507717 | 0.4039695 | 0.0000000 | 7.950902 | 0.0000033 |
REACTOME_GPCR_LIGAND_BINDING | 307 | -0.3751365 | -0.4780206 | 0.0000000 | 7.361843 | 0.0000107 |
REACTOME_EUKARYOTIC_TRANSLATION_ELONGATION | 68 | 0.5338105 | 0.4434600 | 0.0000001 | 7.010496 | 0.0000207 |
REACTOME_RESPONSE_OF_EIF2AK4_GCN2_TO_AMINO_ACID_DEFICIENCY | 73 | 0.5073936 | 0.4302307 | 0.0000004 | 6.371865 | 0.0000787 |
REACTOME_REGULATION_OF_EXPRESSION_OF_SLITS_AND_ROBOS | 121 | 0.3869456 | 0.4419840 | 0.0000009 | 6.062010 | 0.0001428 |
REACTOME_INFLUENZA_INFECTION | 115 | 0.3835674 | 0.3955125 | 0.0000014 | 5.851508 | 0.0002086 |
REACTOME_CLASS_A_1_RHODOPSIN_LIKE_RECEPTORS | 220 | -0.3924788 | -0.5963885 | 0.0000029 | 5.539357 | 0.0003891 |
REACTOME_SIGNALING_BY_GPCR | 476 | -0.2408081 | -0.2447987 | 0.0000095 | 5.021140 | 0.0011763 |
REACTOME_RNA_POLYMERASE_II_TRANSCRIPTION_TERMINATION | 41 | 0.4897926 | 0.4702110 | 0.0000170 | 4.769846 | 0.0019367 |
REACTOME_CELL_CELL_COMMUNICATION | 92 | -0.4780895 | -0.3100255 | 0.0000285 | 4.544617 | 0.0030207 |
REACTOME_NEURONAL_SYSTEM | 295 | -0.2729275 | -0.2529811 | 0.0000376 | 4.425230 | 0.0037113 |
REACTOME_INSULIN_RECEPTOR_RECYCLING | 27 | -0.7806304 | -0.7712514 | 0.0000485 | 4.314184 | 0.0043863 |
REACTOME_PEPTIDE_LIGAND_BINDING_RECEPTORS | 136 | -0.4173369 | -0.6719794 | 0.0000503 | 4.298299 | 0.0043863 |
REACTOME_PROCESSING_OF_CAPPED_INTRON_CONTAINING_PRE_MRNA | 186 | 0.2386616 | 0.2931526 | 0.0000791 | 4.101830 | 0.0065125 |
REACTOME_O_LINKED_GLYCOSYLATION | 67 | -0.5819935 | -0.4289824 | 0.0000919 | 4.036790 | 0.0071665 |
REACTOME_SIGNALING_BY_RECEPTOR_TYROSINE_KINASES | 383 | -0.2229328 | -0.0509501 | 0.0001091 | 3.962284 | 0.0080823 |
REACTOME_HEMOSTASIS | 418 | -0.2260932 | -0.0610934 | 0.0001336 | 3.874296 | 0.0094261 |
REACTOME_PROCESSING_OF_CAPPED_INTRONLESS_PRE_MRNA | 22 | 0.6435041 | 0.5868480 | 0.0001723 | 3.763765 | 0.0116054 |
REACTOME_REGULATION_OF_MRNA_STABILITY_BY_PROTEINS_THAT_BIND_AU_RICH_ELEMENTS | 63 | 0.3923384 | 0.5109388 | 0.0002420 | 3.616203 | 0.0153683 |
REACTOME_CELL_CELL_JUNCTION_ORGANIZATION | 43 | -0.5828519 | -0.6639309 | 0.0002489 | 3.604011 | 0.0153683 |
REACTOME_SARS_COV_1_MODULATES_HOST_TRANSLATION_MACHINERY | 27 | 0.5844997 | 0.4419840 | 0.0003632 | 3.439908 | 0.0215278 |
REACTOME_CELL_JUNCTION_ORGANIZATION | 65 | -0.4634360 | -0.4063725 | 0.0004446 | 3.352058 | 0.0253406 |
REACTOME_METABOLISM_OF_LIPIDS | 504 | -0.1616165 | -0.0787298 | 0.0004867 | 3.312714 | 0.0266529 |
REACTOME_COPI_DEPENDENT_GOLGI_TO_ER_RETROGRADE_TRAFFIC | 74 | 0.3638834 | 0.4431430 | 0.0005323 | 3.273882 | 0.0266529 |
REACTOME_ACTIVATION_OF_THE_MRNA_UPON_BINDING_OF_THE_CAP_BINDING_COMPLEX_AND_EIFS_AND_SUBSEQUENT_BINDING_TO_43S | 42 | 0.4627260 | 0.4361074 | 0.0005479 | 3.261337 | 0.0266529 |
REACTOME_METABOLISM_OF_COFACTORS | 15 | 0.7217364 | 0.7610752 | 0.0005508 | 3.259009 | 0.0266529 |
head(tres[order(-abs(tres$t_median)),],30) %>%
kbl(caption = "Top effect size genesets") %>%
kable_paper("hover", full_width = F)
n_genes | t_mean | t_median | p.value | logp | fdr | |
---|---|---|---|---|---|---|
REACTOME_NR1H2_NR1H3_REGULATE_GENE_EXPRESSION_LINKED_TO_GLUCONEOGENESIS | 5 | -0.9453970 | -1.989966 | 0.2810426 | 0.5512279 | 0.6487618 |
REACTOME_TERMINAL_PATHWAY_OF_COMPLEMENT | 7 | -1.0794163 | -1.631113 | 0.0494754 | 1.3056103 | 0.3174139 |
REACTOME_MOLYBDENUM_COFACTOR_BIOSYNTHESIS | 5 | -1.1199263 | -1.547689 | 0.1871293 | 0.7278582 | 0.5591242 |
REACTOME_LYSINE_CATABOLISM | 5 | -0.7951470 | -1.546757 | 0.2653436 | 0.5761914 | 0.6404547 |
REACTOME_REMOVAL_OF_AMINOTERMINAL_PROPEPTIDES_FROM_GAMMA_CARBOXYLATED_PROTEINS | 8 | -1.1685494 | -1.526791 | 0.0307423 | 1.5122641 | 0.2484514 |
REACTOME_GAMMA_CARBOXYLATION_TRANSPORT_AND_AMINO_TERMINAL_CLEAVAGE_OF_PROTEINS | 8 | -1.1685494 | -1.526791 | 0.0307423 | 1.5122641 | 0.2484514 |
REACTOME_ELEVATION_OF_CYTOSOLIC_CA2_LEVELS | 13 | -1.0093864 | -1.451307 | 0.0296922 | 1.5273580 | 0.2476962 |
REACTOME_PROSTANOID_LIGAND_RECEPTORS | 7 | -1.0460252 | -1.409368 | 0.0973073 | 1.0118544 | 0.4305287 |
REACTOME_INTERLEUKIN_21_SIGNALING | 7 | 1.2774037 | 1.394065 | 0.0457604 | 1.3395106 | 0.3035760 |
REACTOME_REGULATION_OF_LOCALIZATION_OF_FOXO_TRANSCRIPTION_FACTORS | 7 | -0.9500163 | -1.383797 | 0.1451895 | 0.8380649 | 0.5057727 |
REACTOME_PLATELET_ADHESION_TO_EXPOSED_COLLAGEN | 12 | -1.3382173 | -1.375614 | 0.0017449 | 2.7582262 | 0.0527747 |
REACTOME_PROTON_COUPLED_MONOCARBOXYLATE_TRANSPORT | 6 | -1.0664352 | -1.240376 | 0.0453047 | 1.3438570 | 0.3024393 |
REACTOME_EICOSANOIDS | 9 | 1.0281067 | 1.238228 | 0.0289823 | 1.5378672 | 0.2476962 |
REACTOME_LGI_ADAM_INTERACTIONS | 11 | -0.7742820 | -1.233643 | 0.0418522 | 1.3782818 | 0.2939571 |
REACTOME_ACETYLCHOLINE_NEUROTRANSMITTER_RELEASE_CYCLE | 12 | -0.7631296 | -1.226517 | 0.0648040 | 1.1883985 | 0.3672483 |
REACTOME_EXTRINSIC_PATHWAY_OF_FIBRIN_CLOT_FORMATION | 5 | -1.0570508 | -1.212044 | 0.0338318 | 1.4706749 | 0.2652842 |
REACTOME_APOPTOTIC_CLEAVAGE_OF_CELL_ADHESION_PROTEINS | 6 | -1.0239564 | -1.207050 | 0.0704990 | 1.1518171 | 0.3744785 |
REACTOME_CALCITONIN_LIKE_LIGAND_RECEPTORS | 5 | -1.1976169 | -1.203856 | 0.0306966 | 1.5129092 | 0.2484514 |
REACTOME_DEFECTIVE_FACTOR_VIII_CAUSES_HEMOPHILIA_A | 7 | -0.9045173 | -1.198755 | 0.0412643 | 1.3844255 | 0.2926014 |
REACTOME_RHO_GTPASES_ACTIVATE_RHOTEKIN_AND_RHOPHILINS | 8 | -0.7460229 | -1.175043 | 0.1260596 | 0.8994242 | 0.4794900 |
REACTOME_SIGNALING_BY_RNF43_MUTANTS | 6 | -0.7226475 | -1.155542 | 0.1543898 | 0.8113814 | 0.5200129 |
REACTOME_NEGATIVE_REGULATION_OF_ACTIVITY_OF_TFAP2_AP_2_FAMILY_TRANSCRIPTION_FACTORS | 10 | -1.1117187 | -1.143387 | 0.0014320 | 2.8440523 | 0.0471610 |
REACTOME_METAL_SEQUESTRATION_BY_ANTIMICROBIAL_PROTEINS | 5 | -1.3105588 | -1.111227 | 0.0799229 | 1.0973286 | 0.3989707 |
REACTOME_RETINOID_CYCLE_DISEASE_EVENTS | 7 | -0.5975461 | -1.111026 | 0.2170089 | 0.6635225 | 0.5922784 |
REACTOME_CARNITINE_METABOLISM | 6 | -0.8816198 | -1.105754 | 0.2667640 | 0.5738727 | 0.6417927 |
REACTOME_LYSOSPHINGOLIPID_AND_LPA_RECEPTORS | 5 | -0.8962023 | -1.104353 | 0.3210665 | 0.4934050 | 0.6790726 |
REACTOME_UPTAKE_AND_FUNCTION_OF_DIPHTHERIA_TOXIN | 5 | -1.2892659 | -1.101326 | 0.1006063 | 0.9973749 | 0.4359606 |
REACTOME_ALPHA_DEFENSINS | 5 | -0.6589538 | -1.086872 | 0.1861568 | 0.7301212 | 0.5584703 |
REACTOME_NR1H2_NR1H3_REGULATE_GENE_EXPRESSION_LINKED_TO_LIPOGENESIS | 8 | -0.8077926 | -1.049452 | 0.1609464 | 0.7933188 | 0.5265398 |
REACTOME_MECP2_REGULATES_TRANSCRIPTION_OF_NEURONAL_LIGANDS | 5 | -0.7466953 | -1.046536 | 0.0795665 | 1.0992695 | 0.3989707 |
sig <- subset(tres,fdr<0.05)
nrow(sig)
## [1] 47
head(sig[order(-abs(sig$t_median)),],30) %>%
kbl(caption = "Top effect size genesets after FDR filtering") %>%
kable_paper("hover", full_width = F)
n_genes | t_mean | t_median | p.value | logp | fdr | |
---|---|---|---|---|---|---|
REACTOME_NEGATIVE_REGULATION_OF_ACTIVITY_OF_TFAP2_AP_2_FAMILY_TRANSCRIPTION_FACTORS | 10 | -1.1117187 | -1.1433866 | 0.0014320 | 2.844052 | 0.0471610 |
REACTOME_ADHERENS_JUNCTIONS_INTERACTIONS | 21 | -0.7679970 | -0.9805554 | 0.0008673 | 3.061827 | 0.0343566 |
REACTOME_SULFIDE_OXIDATION_TO_SULFATE | 5 | -0.9406028 | -0.9141215 | 0.0006725 | 3.172311 | 0.0284753 |
REACTOME_INSULIN_RECEPTOR_RECYCLING | 27 | -0.7806304 | -0.7712514 | 0.0000485 | 4.314184 | 0.0043863 |
REACTOME_ROS_AND_RNS_PRODUCTION_IN_PHAGOCYTES | 31 | -0.7279597 | -0.7623457 | 0.0012045 | 2.919180 | 0.0435319 |
REACTOME_METABOLISM_OF_COFACTORS | 15 | 0.7217364 | 0.7610752 | 0.0005508 | 3.259009 | 0.0266529 |
REACTOME_TRANSFERRIN_ENDOCYTOSIS_AND_RECYCLING | 27 | -0.5728570 | -0.7325968 | 0.0015060 | 2.822183 | 0.0483742 |
REACTOME_PROCESSING_OF_INTRONLESS_PRE_MRNAS | 16 | 0.7431768 | 0.7309230 | 0.0007286 | 3.137521 | 0.0299933 |
REACTOME_PEPTIDE_LIGAND_BINDING_RECEPTORS | 136 | -0.4173369 | -0.6719794 | 0.0000503 | 4.298299 | 0.0043863 |
REACTOME_PROTEIN_PROTEIN_INTERACTIONS_AT_SYNAPSES | 62 | -0.5095257 | -0.6668842 | 0.0005575 | 3.253742 | 0.0266529 |
REACTOME_CELL_CELL_JUNCTION_ORGANIZATION | 43 | -0.5828519 | -0.6639309 | 0.0002489 | 3.604011 | 0.0153683 |
REACTOME_CLASS_A_1_RHODOPSIN_LIKE_RECEPTORS | 220 | -0.3924788 | -0.5963885 | 0.0000029 | 5.539357 | 0.0003891 |
REACTOME_PROCESSING_OF_CAPPED_INTRONLESS_PRE_MRNA | 22 | 0.6435041 | 0.5868480 | 0.0001723 | 3.763765 | 0.0116054 |
REACTOME_AMINO_ACIDS_REGULATE_MTORC1 | 34 | -0.5095605 | -0.5654216 | 0.0015341 | 2.814137 | 0.0483742 |
REACTOME_REGULATION_OF_MRNA_STABILITY_BY_PROTEINS_THAT_BIND_AU_RICH_ELEMENTS | 63 | 0.3923384 | 0.5109388 | 0.0002420 | 3.616203 | 0.0153683 |
REACTOME_EUKARYOTIC_TRANSLATION_INITIATION | 87 | 0.5107556 | 0.4849303 | 0.0000000 | 8.163993 | 0.0000027 |
REACTOME_GPCR_LIGAND_BINDING | 307 | -0.3751365 | -0.4780206 | 0.0000000 | 7.361843 | 0.0000107 |
REACTOME_NONSENSE_MEDIATED_DECAY_NMD | 83 | 0.5044973 | 0.4749432 | 0.0000000 | 8.141000 | 0.0000027 |
REACTOME_RNA_POLYMERASE_II_TRANSCRIPTION_TERMINATION | 41 | 0.4897926 | 0.4702110 | 0.0000170 | 4.769846 | 0.0019367 |
REACTOME_GOLGI_TO_ER_RETROGRADE_TRANSPORT | 101 | 0.3191950 | 0.4481900 | 0.0009018 | 3.044908 | 0.0343566 |
REACTOME_DOWNSTREAM_SIGNALING_EVENTS_OF_B_CELL_RECEPTOR_BCR | 56 | 0.3972437 | 0.4473579 | 0.0012624 | 2.898792 | 0.0435319 |
REACTOME_SRP_DEPENDENT_COTRANSLATIONAL_PROTEIN_TARGETING_TO_MEMBRANE | 82 | 0.5311678 | 0.4434600 | 0.0000000 | 8.651174 | 0.0000017 |
REACTOME_EUKARYOTIC_TRANSLATION_ELONGATION | 68 | 0.5338105 | 0.4434600 | 0.0000001 | 7.010496 | 0.0000207 |
REACTOME_COPI_DEPENDENT_GOLGI_TO_ER_RETROGRADE_TRAFFIC | 74 | 0.3638834 | 0.4431430 | 0.0005323 | 3.273882 | 0.0266529 |
REACTOME_REGULATION_OF_EXPRESSION_OF_SLITS_AND_ROBOS | 121 | 0.3869456 | 0.4419840 | 0.0000009 | 6.062010 | 0.0001428 |
REACTOME_SARS_COV_1_MODULATES_HOST_TRANSLATION_MACHINERY | 27 | 0.5844997 | 0.4419840 | 0.0003632 | 3.439908 | 0.0215278 |
REACTOME_ACTIVATION_OF_THE_MRNA_UPON_BINDING_OF_THE_CAP_BINDING_COMPLEX_AND_EIFS_AND_SUBSEQUENT_BINDING_TO_43S | 42 | 0.4627260 | 0.4361074 | 0.0005479 | 3.261337 | 0.0266529 |
REACTOME_RESPONSE_OF_EIF2AK4_GCN2_TO_AMINO_ACID_DEFICIENCY | 73 | 0.5073936 | 0.4302307 | 0.0000004 | 6.371865 | 0.0000787 |
REACTOME_O_LINKED_GLYCOSYLATION | 67 | -0.5819935 | -0.4289824 | 0.0000919 | 4.036790 | 0.0071665 |
REACTOME_SELENOAMINO_ACID_METABOLISM | 80 | 0.3742453 | 0.4149139 | 0.0006150 | 3.211133 | 0.0279356 |
plot(tres$t_median,-log10(tres$p.value),pch=19,col="gray")
grid()
points(sig$t_median,-log10(sig$p.value),pch=19,col="red")
tsig <- sig
Determine the median of probe values
gn <- unique(unlist(strsplit( myann$UCSC_RefGene_Name ,";")))
gnl <- strsplit( myann$UCSC_RefGene_Name ,";")
gnl <- mclapply(gnl,unique,mc.cores=CORES)
myann$gnl <- gnl
mymed <- function(g) {
probes <- rownames(myann[grep(g,myann$gnl),])
rows <- which(rownames(mx) %in% probes)
if ( length(rows) > 1 ) {
b <- mx[rows,]
med <- apply(b,2,median)
med <- matrix(med,nrow=1)
colnames(med) <- colnames(b)
rownames(med) <- g
return(med)
}
}
mx <- readRDS("dm3_mx.Rds")
design <- readRDS("dm3_design.Rds")
med <- mclapply(gn,mymed,mc.cores=CORES)
med <- med[lapply(med,length)>0]
medf <- do.call(rbind,med)
Then do a limma test on median gene methylation. See if it is more robust than other approaches.
fit.reduced <- lmFit(medf,design)
fit.reduced <- eBayes(fit.reduced)
summary(decideTests(fit.reduced))
## (Intercept) age sexmale groups
## Down 9708 195 725 0
## NotSig 2681 19514 18535 19714
## Up 7325 5 454 0
dm <- topTable(fit.reduced,coef=4, number = Inf)
#write.table(dma3a,file="dma3a.tsv")
head(dm, 30) %>% kbl() %>% kable_paper("hover", full_width = F)
logFC | AveExpr | t | P.Value | adj.P.Val | B | |
---|---|---|---|---|---|---|
NHLRC1 | -0.2420055 | -1.7115786 | -4.785634 | 0.0000036 | 0.0715680 | 4.0385303 |
IGF2 | -0.1012726 | -0.2004777 | -3.973273 | 0.0001038 | 0.3526937 | 1.1059260 |
FAM153C | -0.2897096 | 0.7535631 | -3.959580 | 0.0001094 | 0.3526937 | 1.0602332 |
CD177 | -0.1651738 | 0.7673867 | -3.930612 | 0.0001222 | 0.3526937 | 0.9639899 |
SLC4A8 | -0.1836541 | -0.0749776 | -3.893643 | 0.0001407 | 0.3526937 | 0.8420105 |
MIR431 | 0.1269209 | 2.5871245 | 3.739056 | 0.0002506 | 0.3526937 | 0.3423244 |
MIR433 | 0.1297470 | 2.9560124 | 3.738265 | 0.0002514 | 0.3526937 | 0.3398124 |
PQLC2 | -0.2045636 | -0.7358737 | -3.676370 | 0.0003152 | 0.3526937 | 0.1445278 |
NKG7 | -0.1914152 | -0.6171371 | -3.660996 | 0.0003333 | 0.3526937 | 0.0964470 |
LZTS2 | -0.1874573 | -0.0999778 | -3.649719 | 0.0003471 | 0.3526937 | 0.0612867 |
IL21 | 0.1983379 | -1.6311602 | 3.623768 | 0.0003812 | 0.3526937 | -0.0192739 |
LINGO3 | -0.1318951 | -0.6057878 | -3.620456 | 0.0003857 | 0.3526937 | -0.0295209 |
LGALS1 | -0.1400368 | -0.7523987 | -3.601113 | 0.0004134 | 0.3526937 | -0.0892062 |
GFRA3 | 0.1837116 | 0.1192049 | 3.597819 | 0.0004183 | 0.3526937 | -0.0993409 |
FER | -0.1223290 | -0.5724057 | -3.594106 | 0.0004239 | 0.3526937 | -0.1107594 |
RSPH9 | -0.1267647 | -0.0298640 | -3.583882 | 0.0004397 | 0.3526937 | -0.1421451 |
BCL9L | 0.1456354 | 0.6773651 | 3.562159 | 0.0004750 | 0.3526937 | -0.2085759 |
ARMC3 | -0.1596330 | -2.5107850 | -3.558377 | 0.0004814 | 0.3526937 | -0.2201077 |
C16orf58 | -0.1777868 | -1.6120849 | -3.554632 | 0.0004878 | 0.3526937 | -0.2315139 |
ITM2C | -0.1875109 | -0.6986916 | -3.550803 | 0.0004945 | 0.3526937 | -0.2431673 |
TNFRSF6B | -0.2576646 | -0.9539851 | -3.545419 | 0.0005040 | 0.3526937 | -0.2595340 |
CTSB | -0.1642150 | -1.8742349 | -3.544140 | 0.0005063 | 0.3526937 | -0.2634194 |
SLC35E2 | 0.1040556 | -2.7570462 | 3.534310 | 0.0005242 | 0.3526937 | -0.2932399 |
SERINC5 | -0.1359664 | 0.0749186 | -3.519834 | 0.0005516 | 0.3526937 | -0.3370233 |
IL19 | 0.1208098 | 2.0249626 | 3.518365 | 0.0005544 | 0.3526937 | -0.3414558 |
TNFAIP6 | -0.2394318 | 0.5163111 | -3.516354 | 0.0005584 | 0.3526937 | -0.3475251 |
ZNF853 | 0.1198794 | 0.0746964 | 3.515093 | 0.0005608 | 0.3526937 | -0.3513302 |
KIF5C | -0.1367720 | 0.2252379 | -3.511645 | 0.0005677 | 0.3526937 | -0.3617216 |
MIR620 | 0.1831690 | 1.6362189 | 3.507591 | 0.0005758 | 0.3526937 | -0.3739331 |
ANXA3 | -0.1495810 | -0.8393991 | -3.496924 | 0.0005977 | 0.3526937 | -0.4060001 |
ttenrich <- function(m,genesets,cores=1) {
res <- mclapply( 1:length(genesets), function(i) {
gs <- genesets[i]
name <- names(gs)
n_members <- length(which(rownames(m) %in% gs[[1]]))
if ( n_members > 4 ) {
tstats <- m[which(rownames(m) %in% gs[[1]]),]
myn <- length(tstats)
mymean <- mean(tstats)
mymedian <- median(tstats)
wt <- t.test(tstats)
res <- c(name,myn,mymean,mymedian,wt$p.value)
}
} , mc.cores = cores)
res_df <- do.call(rbind, res)
rownames(res_df) <- res_df[,1]
res_df <- res_df[,-1]
colnames(res_df) <- c("n_genes","t_mean","t_median","p.value")
tmp <- apply(res_df,2,as.numeric)
rownames(tmp) <- rownames(res_df)
res_df <- tmp
res_df <- as.data.frame(res_df)
res_df <- res_df[order(res_df$p.value),]
res_df$logp <- -log10(res_df$p.value )
res_df$fdr <- p.adjust(res_df$p.value,method="fdr")
res_df[order(abs(res_df$p.value)),]
return(res_df)
}
m <- as.data.frame(dm$t)
rownames(m) <- rownames(dm)
colnames(m) <- "t"
tres <- ttenrich(m=m,genesets=gs_symbols,cores=CORES)
tsig <- subset(tres,fdr<0.05)
nrow(tsig)
## [1] 102
nrow(subset(tsig,t_median>0))
## [1] 60
head(sig[order(-tsig$t_median),],20) %>%
kbl(caption="hypermethylated pathways") %>%
kable_paper("hover", full_width = F)
n_genes | t_mean | t_median | p.value | logp | fdr | |
---|---|---|---|---|---|---|
NA | NA | NA | NA | NA | NA | NA |
REACTOME_PROCESSING_OF_CAPPED_INTRONLESS_PRE_MRNA | 22 | 0.6435041 | 0.5868480 | 0.0001723 | 3.763765 | 0.0116054 |
NA.1 | NA | NA | NA | NA | NA | NA |
REACTOME_RESPONSE_OF_EIF2AK4_GCN2_TO_AMINO_ACID_DEFICIENCY | 73 | 0.5073936 | 0.4302307 | 0.0000004 | 6.371865 | 0.0000787 |
NA.2 | NA | NA | NA | NA | NA | NA |
REACTOME_NONSENSE_MEDIATED_DECAY_NMD | 83 | 0.5044973 | 0.4749432 | 0.0000000 | 8.141000 | 0.0000027 |
REACTOME_TRANSLATION | 197 | 0.3507717 | 0.4039695 | 0.0000000 | 7.950902 | 0.0000033 |
REACTOME_SRP_DEPENDENT_COTRANSLATIONAL_PROTEIN_TARGETING_TO_MEMBRANE | 82 | 0.5311678 | 0.4434600 | 0.0000000 | 8.651174 | 0.0000017 |
NA.3 | NA | NA | NA | NA | NA | NA |
REACTOME_PROCESSING_OF_CAPPED_INTRON_CONTAINING_PRE_MRNA | 186 | 0.2386616 | 0.2931526 | 0.0000791 | 4.101830 | 0.0065125 |
NA.4 | NA | NA | NA | NA | NA | NA |
NA.5 | NA | NA | NA | NA | NA | NA |
REACTOME_NEGATIVE_REGULATION_OF_ACTIVITY_OF_TFAP2_AP_2_FAMILY_TRANSCRIPTION_FACTORS | 10 | -1.1117187 | -1.1433866 | 0.0014320 | 2.844052 | 0.0471610 |
NA.6 | NA | NA | NA | NA | NA | NA |
REACTOME_REGULATION_OF_EXPRESSION_OF_SLITS_AND_ROBOS | 121 | 0.3869456 | 0.4419840 | 0.0000009 | 6.062010 | 0.0001428 |
REACTOME_INTRA_GOLGI_AND_RETROGRADE_GOLGI_TO_ER_TRAFFIC | 151 | 0.2553093 | 0.3731771 | 0.0009041 | 3.043774 | 0.0343566 |
REACTOME_INFLUENZA_INFECTION | 115 | 0.3835674 | 0.3955125 | 0.0000014 | 5.851508 | 0.0002086 |
NA.7 | NA | NA | NA | NA | NA | NA |
REACTOME_DOWNSTREAM_SIGNALING_EVENTS_OF_B_CELL_RECEPTOR_BCR | 56 | 0.3972437 | 0.4473579 | 0.0012624 | 2.898792 | 0.0435319 |
REACTOME_SULFIDE_OXIDATION_TO_SULFATE | 5 | -0.9406028 | -0.9141215 | 0.0006725 | 3.172311 | 0.0284753 |
nrow(subset(tsig,t_median<0))
## [1] 42
head(sig[order(tsig$t_median),],20) %>%
kbl(caption="hypomethylated pathways") %>%
kable_paper("hover", full_width = F)
n_genes | t_mean | t_median | p.value | logp | fdr | |
---|---|---|---|---|---|---|
NA | NA | NA | NA | NA | NA | NA |
NA.1 | NA | NA | NA | NA | NA | NA |
NA.2 | NA | NA | NA | NA | NA | NA |
NA.3 | NA | NA | NA | NA | NA | NA |
NA.4 | NA | NA | NA | NA | NA | NA |
NA.5 | NA | NA | NA | NA | NA | NA |
REACTOME_GOLGI_TO_ER_RETROGRADE_TRANSPORT | 101 | 0.3191950 | 0.4481900 | 0.0009018 | 3.044908 | 0.0343566 |
NA.6 | NA | NA | NA | NA | NA | NA |
NA.7 | NA | NA | NA | NA | NA | NA |
NA.8 | NA | NA | NA | NA | NA | NA |
NA.9 | NA | NA | NA | NA | NA | NA |
REACTOME_CELL_CELL_COMMUNICATION | 92 | -0.4780895 | -0.3100255 | 0.0000285 | 4.544617 | 0.0030207 |
NA.10 | NA | NA | NA | NA | NA | NA |
REACTOME_SIGNALING_BY_GPCR | 476 | -0.2408081 | -0.2447987 | 0.0000095 | 5.021140 | 0.0011763 |
NA.11 | NA | NA | NA | NA | NA | NA |
NA.12 | NA | NA | NA | NA | NA | NA |
NA.13 | NA | NA | NA | NA | NA | NA |
REACTOME_EUKARYOTIC_TRANSLATION_INITIATION | 87 | 0.5107556 | 0.4849303 | 0.0000000 | 8.163993 | 0.0000027 |
NA.14 | NA | NA | NA | NA | NA | NA |
NA.15 | NA | NA | NA | NA | NA | NA |
Use Euler diagrams to find the similarity. As medians are normally distributed about the zero, one would expect equal numbers of up and down- methylated gene sets. Therefore the t-test based approach could be considered better.
msig_up <- subset(msig,s.dist>0)$set
msig_dn <- subset(msig,s.dist<0)$set
tsig_up <- rownames(subset(tsig,t_median>0))
tsig_dn <- rownames(subset(tsig,t_median<0))
v1 <- list("mitch up"=msig_up, "mitch dn"=msig_dn,
"ttest up"=tsig_up,"ttest dn"=tsig_dn)
plot(euler(v1),quantities = TRUE)
Split data set into 2 halves to show consistency.
For reproducibility.
sessionInfo()
## R version 4.3.1 (2023-06-16)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 22.04.3 LTS
##
## Matrix products: default
## BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.10.0
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.10.0
##
## locale:
## [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
## [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
## [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
##
## time zone: Australia/Melbourne
## tzcode source: system (glibc)
##
## attached base packages:
## [1] grid parallel stats4 stats graphics grDevices utils
## [8] datasets methods base
##
## other attached packages:
## [1] ENmix_1.36.03
## [2] doParallel_1.0.17
## [3] qqman_0.1.9
## [4] RCircos_1.2.2
## [5] beeswarm_0.4.0
## [6] forestplot_3.1.3
## [7] abind_1.4-5
## [8] checkmate_2.2.0
## [9] reshape2_1.4.4
## [10] gplots_3.1.3
## [11] GEOquery_2.68.0
## [12] RColorBrewer_1.1-3
## [13] topconfects_1.16.0
## [14] DMRcatedata_2.18.0
## [15] ExperimentHub_2.8.1
## [16] AnnotationHub_3.8.0
## [17] BiocFileCache_2.8.0
## [18] dbplyr_2.3.3
## [19] DMRcate_2.14.1
## [20] R.utils_2.12.2
## [21] R.oo_1.25.0
## [22] R.methodsS3_1.8.2
## [23] plyr_1.8.8
## [24] dplyr_1.1.3
## [25] limma_3.56.2
## [26] tictoc_1.2
## [27] IlluminaHumanMethylation450kmanifest_0.4.0
## [28] eulerr_7.0.0
## [29] mitch_1.12.0
## [30] kableExtra_1.3.4
## [31] missMethyl_1.34.0
## [32] IlluminaHumanMethylationEPICanno.ilm10b4.hg19_0.6.0
## [33] IlluminaHumanMethylation450kanno.ilmn12.hg19_0.6.1
## [34] minfi_1.46.0
## [35] bumphunter_1.42.0
## [36] locfit_1.5-9.8
## [37] iterators_1.0.14
## [38] foreach_1.5.2
## [39] Biostrings_2.68.1
## [40] XVector_0.40.0
## [41] SummarizedExperiment_1.30.2
## [42] Biobase_2.60.0
## [43] MatrixGenerics_1.12.3
## [44] matrixStats_1.0.0
## [45] GenomicRanges_1.52.0
## [46] GenomeInfoDb_1.36.3
## [47] IRanges_2.34.1
## [48] S4Vectors_0.38.1
## [49] BiocGenerics_0.46.0
##
## loaded via a namespace (and not attached):
## [1] DSS_2.48.0 ProtGenerics_1.32.0
## [3] bitops_1.0-7 httr_1.4.7
## [5] webshot_0.5.5 dynamicTreeCut_1.63-1
## [7] tools_4.3.1 doRNG_1.8.6
## [9] backports_1.4.1 utf8_1.2.3
## [11] R6_2.5.1 HDF5Array_1.28.1
## [13] lazyeval_0.2.2 Gviz_1.44.1
## [15] permute_0.9-7 rhdf5filters_1.12.1
## [17] prettyunits_1.1.1 GGally_2.1.2
## [19] gridExtra_2.3 base64_2.0.1
## [21] preprocessCore_1.62.1 cli_3.6.1
## [23] sass_0.4.7 readr_2.1.4
## [25] genefilter_1.82.1 askpass_1.2.0
## [27] Rsamtools_2.16.0 systemfonts_1.0.4
## [29] foreign_0.8-85 siggenes_1.74.0
## [31] illuminaio_0.42.0 svglite_2.1.1
## [33] dichromat_2.0-0.1 scrime_1.3.5
## [35] BSgenome_1.68.0 readxl_1.4.3
## [37] impute_1.74.1 rstudioapi_0.15.0
## [39] RSQLite_2.3.1 generics_0.1.3
## [41] BiocIO_1.10.0 gtools_3.9.4
## [43] interp_1.1-4 Matrix_1.6-1
## [45] fansi_1.0.4 lifecycle_1.0.3
## [47] edgeR_3.42.4 yaml_2.3.7
## [49] rhdf5_2.44.0 blob_1.2.4
## [51] promises_1.2.1 crayon_1.5.2
## [53] lattice_0.21-8 echarts4r_0.4.5
## [55] GenomicFeatures_1.52.2 annotate_1.78.0
## [57] KEGGREST_1.40.0 pillar_1.9.0
## [59] knitr_1.44 beanplot_1.3.1
## [61] rjson_0.2.21 codetools_0.2-19
## [63] glue_1.6.2 data.table_1.14.8
## [65] vctrs_0.6.3 png_0.1-8
## [67] cellranger_1.1.0 gtable_0.3.4
## [69] assertthat_0.2.1 cachem_1.0.8
## [71] xfun_0.40 S4Arrays_1.0.6
## [73] mime_0.12 survival_3.5-7
## [75] statmod_1.5.0 interactiveDisplayBase_1.38.0
## [77] ellipsis_0.3.2 nlme_3.1-163
## [79] bit64_4.0.5 bsseq_1.36.0
## [81] progress_1.2.2 filelock_1.0.2
## [83] bslib_0.5.1 nor1mix_1.3-0
## [85] KernSmooth_2.23-22 rpart_4.1.19
## [87] colorspace_2.1-0 DBI_1.1.3
## [89] Hmisc_5.1-1 nnet_7.3-19
## [91] tidyselect_1.2.0 bit_4.0.5
## [93] compiler_4.3.1 curl_5.0.2
## [95] rvest_1.0.3 htmlTable_2.4.1
## [97] BiasedUrn_2.0.11 xml2_1.3.5
## [99] RPMM_1.25 DelayedArray_0.26.7
## [101] rtracklayer_1.60.1 scales_1.2.1
## [103] caTools_1.18.2 quadprog_1.5-8
## [105] rappdirs_0.3.3 stringr_1.5.0
## [107] digest_0.6.33 rmarkdown_2.24
## [109] htmltools_0.5.6 pkgconfig_2.0.3
## [111] jpeg_0.1-10 base64enc_0.1-3
## [113] sparseMatrixStats_1.12.2 highr_0.10
## [115] fastmap_1.1.1 ensembldb_2.24.0
## [117] rlang_1.1.1 htmlwidgets_1.6.2
## [119] shiny_1.7.5 DelayedMatrixStats_1.22.6
## [121] jquerylib_0.1.4 jsonlite_1.8.7
## [123] BiocParallel_1.34.2 mclust_6.0.0
## [125] VariantAnnotation_1.46.0 RCurl_1.98-1.12
## [127] magrittr_2.0.3 Formula_1.2-5
## [129] GenomeInfoDbData_1.2.10 Rhdf5lib_1.22.1
## [131] munsell_0.5.0 Rcpp_1.0.11
## [133] stringi_1.7.12 zlibbioc_1.46.0
## [135] MASS_7.3-60 org.Hs.eg.db_3.17.0
## [137] deldir_1.0-9 splines_4.3.1
## [139] multtest_2.56.0 hms_1.1.3
## [141] polylabelr_0.2.0 rngtools_1.5.2
## [143] geneplotter_1.78.0 biomaRt_2.56.1
## [145] BiocVersion_3.17.1 XML_3.99-0.14
## [147] evaluate_0.21 calibrate_1.7.7
## [149] latticeExtra_0.6-30 biovizBase_1.48.0
## [151] BiocManager_1.30.22 tzdb_0.4.0
## [153] httpuv_1.6.11 polyclip_1.10-4
## [155] tidyr_1.3.0 openssl_2.1.0
## [157] purrr_1.0.2 reshape_0.8.9
## [159] ggplot2_3.4.3 xtable_1.8-4
## [161] restfulr_0.0.15 AnnotationFilter_1.24.0
## [163] later_1.3.1 viridisLite_0.4.2
## [165] tibble_3.2.1 memoise_2.0.1
## [167] AnnotationDbi_1.62.2 GenomicAlignments_1.36.0
## [169] cluster_2.1.4