Source: https://github.com/markziemann/SurveyEnrichmentMethods

Intro

The dataset being used is SRP253951 and we are comparing A549 cells with and without infection with SARS-CoV-2.

Data are obtained from http://dee2.io/

Mitch devel was used (Apr 2, 2025). https://github.com/markziemann/mitch

suppressPackageStartupMessages({
library("mitch") #devel > install.packages("mitch",repos=NULL,type="source")
library("getDEE2") #BiocManager::install("getDEE2")
library("DESeq2") #BiocManager::install("DESeq2")
library("kableExtra")
})

knitr::opts_chunk$set(dev = 'svg') # set output device to svg

Get expression data

I’m using some RNA-seq data looking at the difference in transcriptome caused by SARS-CoV-2 infection.

name="SRP253951"
mdat<-getDEE2Metadata("hsapiens")
samplesheet <- mdat[grep("SRP253951",mdat$SRP_accession),]

samplesheet <- mdat[which(mdat$SRX_accession %in% c("SRX8089264","SRX8089265","SRX8089266","SRX8089267","SRX8089268","SRX8089269")),]

samplesheet$trt <- factor(c(0,0,0,1,1,1))
s1 <- samplesheet

s1 %>% kbl(caption = "sample sheet") %>% kable_paper("hover", full_width = F)
sample sheet
SRR_accession QC_summary SRX_accession SRS_accession SRP_accession Experiment_title GEO_series trt
149273 SRR11517674 PASS SRX8089264 SRS6456133 SRP253951 GSM4462336: Series5_A549_Mock_1; Homo sapiens; RNA-Seq GSE147507 0
149274 SRR11517675 PASS SRX8089265 SRS6456134 SRP253951 GSM4462337: Series5_A549_Mock_2; Homo sapiens; RNA-Seq GSE147507 0
149275 SRR11517676 PASS SRX8089266 SRS6456135 SRP253951 GSM4462338: Series5_A549_Mock_3; Homo sapiens; RNA-Seq GSE147507 0
149276 SRR11517677 PASS SRX8089267 SRS6456136 SRP253951 GSM4462339: Series5_A549_SARS-CoV-2_1; Homo sapiens; RNA-Seq GSE147507 1
149277 SRR11517678 PASS SRX8089268 SRS6456137 SRP253951 GSM4462340: Series5_A549_SARS-CoV-2_2; Homo sapiens; RNA-Seq GSE147507 1
149278 SRR11517679 PASS SRX8089269 SRS6456139 SRP253951 GSM4462341: Series5_A549_SARS-CoV-2_3; Homo sapiens; RNA-Seq GSE147507 1
w<-getDEE2("hsapiens",samplesheet$SRR_accession,metadata=mdat,legacy = TRUE)
## For more information about DEE2 QC metrics, visit
##     https://github.com/markziemann/dee2/blob/master/qc/qc_metrics.md
x<-Tx2Gene(w)
x <- x$Tx2Gene

# save the genetable for later
gt<-w$GeneInfo[,1,drop=FALSE]
gt$accession<-rownames(gt)

# counts 
x1<-x[,which(colnames(x) %in% samplesheet$SRR_accession)]

Here show the number of genes in the annotation set, and those detected above the detection threshold.

# filter out lowly expressed genes
x1<-x1[which(rowSums(x1)/ncol(x1)>=(10)),]
nrow(x)
## [1] 39297
nrow(x1)
## [1] 15182

Now multidimensional scaling (MDS) plot to show the correlation between the datasets. If the control and case datasets are clustered separately, then it is likely that there will be many differentially expressed genes with FDR<0.05.

plot(cmdscale(dist(t(x1))), xlab="Coordinate 1", ylab="Coordinate 2", pch=19, col=s1$trt, main="MDS")

Differential expression

Now run DESeq2 for control vs case.

y <- DESeqDataSetFromMatrix(countData = round(x1), colData = s1, design = ~ trt)
## converting counts to integer mode
y <- DESeq(y)
## estimating size factors
## estimating dispersions
## gene-wise dispersion estimates
## mean-dispersion relationship
## final dispersion estimates
## fitting model and testing
de <- results(y)
de<-as.data.frame(de[order(de$pvalue),])
rownames(de)<-sapply(strsplit(rownames(de),"\\."),"[[",1)
head(de) %>% kbl() %>% kable_paper("hover", full_width = F)
baseMean log2FoldChange lfcSE stat pvalue padj
ENSG00000113739 3523.734 4.004593 0.1012568 39.54888 0 0
ENSG00000176153 8851.309 -2.785312 0.0820808 -33.93378 0 0
ENSG00000058085 5767.111 3.699041 0.1148334 32.21223 0 0
ENSG00000169710 6917.854 -2.259158 0.0703230 -32.12547 0 0
ENSG00000170421 41561.919 -2.233482 0.0742019 -30.10007 0 0
ENSG00000100297 2476.082 -2.364383 0.0802583 -29.45965 0 0

Now let’s have a look at some of the charts showing differential expression. In particular, an MA plot and volcano plot.

maplot <- function(de,contrast_name) {
  sig <-subset(de, padj < 0.05 )
  up <-rownames(subset(de, padj < 0.05 & log2FoldChange > 0))
  dn <-rownames(subset(de, padj < 0.05 & log2FoldChange < 0))
  GENESUP <- length(up)
  GENESDN <- length(dn)
  DET=nrow(de)
  SUBHEADER = paste(GENESUP, "up, ", GENESDN, "down", DET, "detected")
  ns <-subset(de, padj > 0.05 )
  plot(log2(de$baseMean),de$log2FoldChange, 
       xlab="log2 basemean", ylab="log2 foldchange",
       pch=19, cex=0.5, col="dark gray",
       main=contrast_name, cex.main=0.7)
  points(log2(sig$baseMean),sig$log2FoldChange,
         pch=19, cex=0.5, col="red")
  mtext(SUBHEADER,cex = 0.7)
}

make_volcano <- function(de,name) {
    sig <- subset(de,padj<0.05)
    N_SIG=nrow(sig)
    N_UP=nrow(subset(sig,log2FoldChange>0))
    N_DN=nrow(subset(sig,log2FoldChange<0))
    DET=nrow(de)
    HEADER=paste(N_SIG,"@5%FDR,", N_UP, "up", N_DN, "dn", DET, "detected")
    plot(de$log2FoldChange,-log10(de$padj),cex=0.5,pch=19,col="darkgray",
        main=name, xlab="log2 FC", ylab="-log10 pval", xlim=c(-6,6))
    mtext(HEADER)
    grid()
    points(sig$log2FoldChange,-log10(sig$padj),cex=0.5,pch=19,col="red")
}

maplot(de,name)

make_volcano(de,name)

Gene sets from Reactome

In order to perform gene set analysis, we need some gene sets.

if (! file.exists("ReactomePathways.gmt")) {
  download.file("https://reactome.org/download/current/ReactomePathways.gmt.zip", 
    destfile="ReactomePathways.gmt.zip")
  unzip("ReactomePathways.gmt.zip")
}
genesets<-gmt_import("ReactomePathways.gmt")

FCS with Mitch

Mitch uses rank-ANOVA statistics for enrichment detection.

m <- mitch_import(de,DEtype = "DEseq2", geneTable = gt)
## The input is a single dataframe; one contrast only. Converting
##         it to a list for you.
## Note: Mean no. genes in input = 15182
## Note: no. genes in output = 14186
## Note: estimated proportion of input genes in output = 0.934
mres <- mitch_calc(m,genesets = genesets,priority="effect",cores=8)
## Note: Enrichments with large effect sizes may not be
##             statistically significant.
m_up <- subset(mres$enrichment_result,p.adjustANOVA<0.05 & s.dist > 0)[,1]
m_dn <- subset(mres$enrichment_result,p.adjustANOVA<0.05 & s.dist < 0)[,1]
message(paste("Number of up-regulated pathways:",length(m_up) ))
## Number of up-regulated pathways: 101
message(paste("Number of down-regulated pathways:",length(m_dn) ))
## Number of down-regulated pathways: 339
up <- head(subset(mres$enrichment_result, s.dist > 0 & p.adjustANOVA < 0.05),20)
dn <- head(subset(mres$enrichment_result, s.dist < 0 & p.adjustANOVA < 0.05),20)

up %>% kbl(caption="Top up-regulated pathways") %>% kable_paper("hover", full_width = F)
Top up-regulated pathways
set setSize pANOVA s.dist p.adjustANOVA
454 GRB2 events in EGFR signaling 11 0.0002869 0.6315023 0.0018783
385 FOXO-mediated transcription of cell cycle genes 15 0.0000355 0.6166255 0.0003069
1094 Response of EIF2AK1 (HRI) to heme deficiency 15 0.0000370 0.6152236 0.0003156
627 Laminin interactions 29 0.0000001 0.5797083 0.0000012
69 Anchoring fibril formation 14 0.0003144 0.5561671 0.0020108
1031 Regulation of MITF-M-dependent genes involved in extracellular matrix, focal adhesion and epithelial-to-mesenchymal transition 11 0.0020454 0.5369440 0.0099006
1203 Signaling by FLT3 ITD and TKD mutants 14 0.0006895 0.5238599 0.0039561
588 Interleukin-10 signaling 26 0.0000062 0.5121686 0.0000679
1204 Signaling by FLT3 fusion proteins 18 0.0001846 0.5090815 0.0012701
1125 SHC1 events in EGFR signaling 12 0.0025339 0.5033865 0.0119537
776 Nephrin family interactions 19 0.0002605 0.4839304 0.0017206
177 Chemokine receptors bind chemokines 16 0.0009203 0.4785286 0.0050464
383 FLT3 signaling in disease 26 0.0000262 0.4763472 0.0002347
225 Crosslinking of collagen fibrils 16 0.0016541 0.4543313 0.0083040
594 Interleukin-20 family signaling 16 0.0019533 0.4472653 0.0095479
654 MET activates PTK2 signaling 23 0.0003357 0.4319983 0.0021321
769 Negative regulation of FLT3 12 0.0105564 0.4263440 0.0380032
591 Interleukin-15 signaling 12 0.0109458 0.4242392 0.0392073
241 DCC mediated attractive signaling 13 0.0086550 0.4205776 0.0325602
1095 Response of EIF2AK4 (GCN2) to amino acid deficiency 99 0.0000000 0.4155382 0.0000000
dn %>% kbl(caption="Top down-regulated pathways") %>% kable_paper("hover", full_width = F)
Top down-regulated pathways
set setSize pANOVA s.dist p.adjustANOVA
1425 Unwinding of DNA 12 0.0000000 -0.9595268 0.0000002
251 DNA strand elongation 32 0.0000000 -0.8311740 0.0000000
902 Processive synthesis on the lagging strand 15 0.0000002 -0.7771411 0.0000032
1080 Removal of the Flap Intermediate 14 0.0000008 -0.7614612 0.0000116
626 Lagging Strand Synthesis 20 0.0000000 -0.7527107 0.0000001
49 Activation of the pre-replicative complex 32 0.0000000 -0.7148907 0.0000000
631 Leading Strand Synthesis 14 0.0000051 -0.7041652 0.0000576
878 Polymerase switching 14 0.0000051 -0.7041652 0.0000576
179 Cholesterol biosynthesis 26 0.0000000 -0.7023903 0.0000000
703 Mismatch repair (MMR) directed by MSH2:MSH6 (MutSalpha) 14 0.0000069 -0.6939438 0.0000745
825 PCNA-Dependent Long Patch Base Excision Repair 21 0.0000001 -0.6863765 0.0000010
1084 Resolution of AP sites via the multiple-nucleotide patch replacement pathway 24 0.0000000 -0.6565104 0.0000005
1085 Resolution of Abasic Sites (AP sites) 37 0.0000000 -0.6190314 0.0000000
701 Mismatch Repair 15 0.0000407 -0.6118928 0.0003457
273 Defective pyroptosis 13 0.0001660 -0.6031892 0.0011582
422 Formation of tubulin folding intermediates by CCT/TriC 21 0.0000017 -0.6031802 0.0000215
702 Mismatch repair (MMR) directed by MSH2:MSH3 (MutSbeta) 14 0.0001103 -0.5968509 0.0007954
33 Activation of ATR in response to replication stress 37 0.0000000 -0.5850227 0.0000000
399 Folding of actin by CCT/TriC 10 0.0014141 -0.5828866 0.0072458
524 Heme biosynthesis 12 0.0005993 -0.5721626 0.0035194

A normal way to visualise the results is by barplot.

up <- head(subset(mres$enrichment_result, s.dist > 0 & p.adjustANOVA < 0.05),20)
dn <- head(subset(mres$enrichment_result, s.dist < 0 & p.adjustANOVA < 0.05),20)
top <- rbind(up,dn)
top <- top[order(top$s.dist),]

par(mar=c(5.1, 25.1, 4.1, 2.1))
gsn <- substr(top$set, start = 1, stop = 70 )
barplot(top$s.dist,horiz=TRUE,las=1,xlab="ES",names.arg=gsn,cex.names=0.6,main="Reactome")

There are some plots already provided by mitch.

mitch_plots(mres,"myplots.pdf")
## pdf 
##   2

Cool, but it doesn’t show whether the gene sets have common driver genes.

networkplot(mres,FDR=0.05,n_sets=20)

network_genes(mres,FDR=0.05,n_sets=20)
## [[1]]
## [[1]]$`UP genesets.Anchoring fibril formation`
##  [1] "COL4A1" "COL4A2" "COL4A3" "COL4A4" "COL4A5" "COL4A6" "COL7A1" "LAMA3" 
##  [9] "LAMB3"  "LAMC2" 
## 
## [[1]]$`UP genesets.Chemokine receptors bind chemokines`
## [1] "CCL2"   "CCL20"  "CCL5"   "CX3CL1" "CXCL1"  "CXCL2"  "CXCL3"  "CXCL5" 
## [9] "CXCL8" 
## 
## [[1]]$`UP genesets.Crosslinking of collagen fibrils`
##  [1] "COL4A1" "COL4A2" "COL4A3" "COL4A4" "COL4A5" "COL4A6" "LOX"    "LOXL2" 
##  [9] "LOXL4"  "PXDN"  
## 
## [[1]]$`UP genesets.DCC mediated attractive signaling`
## [1] "ABLIM3" "FYN"    "NCK1"   "PTK2"   "RAC1"   "TRIO"   "WASL"  
## 
## [[1]]$`UP genesets.FLT3 signaling in disease`
##  [1] "BCL2L1" "CBL"    "CDKN1A" "ETV6"   "FLT3LG" "GAB2"   "GOLGB1" "KRAS"  
##  [9] "NRAS"   "PIK3CA" "PIM1"   "PTPN11" "RPS27A" "SOS1"   "SPTBN1" "STAT5A"
## [17] "STAT5B" "TRIP11" "UBC"    "ZMYM2" 
## 
## [[1]]$`UP genesets.FOXO-mediated transcription of cell cycle genes`
##  [1] "BTG1"    "CAV1"    "CCNG2"   "CDKN1A"  "CDKN1B"  "FOXO1"   "FOXO3"  
##  [8] "GADD45A" "KLF4"    "RBL2"    "SMAD2"   "SMAD3"   "SMAD4"  
## 
## [[1]]$`UP genesets.GRB2 events in EGFR signaling`
## [1] "AREG"  "BTC"   "EGFR"  "EREG"  "HBEGF" "KRAS"  "NRAS"  "SOS1"  "TGFA" 
## 
## [[1]]$`UP genesets.Interleukin-10 signaling`
##  [1] "CCL2"     "CCL20"    "CCL5"     "CSF1"     "CSF3"     "CXCL1"   
##  [7] "CXCL2"    "CXCL8"    "ICAM1"    "IL10RB"   "IL18"     "IL1A"    
## [13] "IL1B"     "IL6"      "JAK1"     "LIF"      "PTAFR"    "PTGS2"   
## [19] "TNFRSF1B"
## 
## [[1]]$`UP genesets.Interleukin-15 signaling`
## [1] "GAB2"   "IL15"   "IL15RA" "JAK1"   "JAK3"   "SOS1"   "SOS2"   "STAT5A"
## [9] "STAT5B"
## 
## [[1]]$`UP genesets.Interleukin-20 family signaling`
##  [1] "IL10RB" "IL20RB" "JAK1"   "JAK2"   "JAK3"   "PTPN11" "SOCS3"  "STAT1" 
##  [9] "STAT4"  "STAT5A" "STAT5B"
## 
## [[1]]$`UP genesets.Laminin interactions`
##  [1] "COL4A1" "COL4A2" "COL4A3" "COL4A4" "COL4A5" "COL4A6" "COL7A1" "ITGA1" 
##  [9] "ITGA2"  "ITGA3"  "ITGA6"  "ITGAV"  "ITGB1"  "ITGB4"  "LAMA3"  "LAMA4" 
## [17] "LAMA5"  "LAMB1"  "LAMB3"  "LAMC1"  "LAMC2"  "NID1"  
## 
## [[1]]$`UP genesets.MET activates PTK2 signaling`
##  [1] "COL5A1" "COL5A2" "ITGA2"  "ITGA3"  "ITGB1"  "LAMA3"  "LAMA4"  "LAMA5" 
##  [9] "LAMB1"  "LAMB3"  "LAMC1"  "LAMC2"  "MET"    "PTK2"  
## 
## [[1]]$`UP genesets.Negative regulation of FLT3`
## [1] "ABL2"   "CBL"    "FLT3LG" "PTPRJ"  "RPS27A" "SH2B3"  "SOCS2"  "SOCS6" 
## [9] "UBC"   
## 
## [[1]]$`UP genesets.Nephrin family interactions`
##  [1] "ACTN1"   "CASK"    "CD2AP"   "FYN"     "IQGAP1"  "KIRREL2" "KIRREL3"
##  [8] "MAGI2"   "NCK1"    "NPHS1"   "PIK3CA"  "PIK3CB"  "SPTAN1"  "SPTBN1" 
## [15] "WASL"   
## 
## [[1]]$`UP genesets.Regulation of MITF-M-dependent genes involved in extracellular matrix, focal adhesion and epithelial-to-mesenchymal transition`
## [1] "CDH2"     "GXYLT2"   "ITGA2"    "MITF"     "PXDN"     "SERPINE1" "STT3B"   
## [8] "ZEB1"    
## 
## [[1]]$`UP genesets.Response of EIF2AK1 (HRI) to heme deficiency`
##  [1] "ASNS"     "ATF3"     "ATF4"     "CEBPB"    "CEBPG"    "CHAC1"   
##  [7] "DDIT3"    "EIF2S2"   "EIF2S3"   "GRB10"    "PPP1R15A" "TRIB3"   
## 
## [[1]]$`UP genesets.Response of EIF2AK4 (GCN2) to amino acid deficiency`
##  [1] "ASNS"    "ATF2"    "ATF3"    "ATF4"    "CEBPB"   "CEBPG"   "DDIT3"  
##  [8] "EIF2S2"  "EIF2S3"  "IMPACT"  "RPL10"   "RPL10A"  "RPL11"   "RPL12"  
## [15] "RPL13A"  "RPL14"   "RPL15"   "RPL17"   "RPL21"   "RPL22"   "RPL22L1"
## [22] "RPL23"   "RPL23A"  "RPL24"   "RPL26"   "RPL27"   "RPL28"   "RPL3"   
## [29] "RPL30"   "RPL31"   "RPL32"   "RPL34"   "RPL35A"  "RPL37"   "RPL37A" 
## [36] "RPL38"   "RPL39"   "RPL4"    "RPL41"   "RPL5"    "RPL6"    "RPL7"   
## [43] "RPL7A"   "RPL9"    "RPLP0"   "RPS12"   "RPS13"   "RPS14"   "RPS15A" 
## [50] "RPS17"   "RPS18"   "RPS20"   "RPS23"   "RPS24"   "RPS25"   "RPS27"  
## [57] "RPS27A"  "RPS3"    "RPS3A"   "RPS4X"   "RPS4Y1"  "RPS6"    "RPS7"   
## [64] "RPS8"    "TRIB3"  
## 
## [[1]]$`UP genesets.SHC1 events in EGFR signaling`
## [1] "AREG"  "BTC"   "EGFR"  "EREG"  "HBEGF" "KRAS"  "NRAS"  "SOS1"  "TGFA" 
## 
## [[1]]$`UP genesets.Signaling by FLT3 ITD and TKD mutants`
##  [1] "BCL2L1" "CDKN1A" "GAB2"   "KRAS"   "NRAS"   "PIK3CA" "PIM1"   "PTPN11"
##  [9] "SOS1"   "STAT5A" "STAT5B"
## 
## [[1]]$`UP genesets.Signaling by FLT3 fusion proteins`
##  [1] "CDKN1A" "ETV6"   "GAB2"   "GOLGB1" "KRAS"   "NRAS"   "PIK3CA" "PIM1"  
##  [9] "SOS1"   "SPTBN1" "STAT5A" "STAT5B" "TRIP11" "ZMYM2" 
## 
## [[1]]$`DOWN genesets.Activation of ATR in response to replication stress`
##  [1] "ATR"    "ATRIP"  "CDC25A" "CDC25C" "CDC45"  "CDC6"   "CDC7"   "CDK2"  
##  [9] "CHEK1"  "CLSPN"  "DBF4"   "HUS1"   "MCM10"  "MCM2"   "MCM3"   "MCM4"  
## [17] "MCM5"   "MCM6"   "MCM7"   "MCM8"   "ORC1"   "ORC3"   "ORC5"   "ORC6"  
## [25] "RAD1"   "RAD9A"  "RAD9B"  "RFC2"   "RFC3"   "RFC4"   "RFC5"   "RPA1"  
## [33] "RPA2"   "RPA3"  
## 
## [[1]]$`DOWN genesets.Activation of the pre-replicative complex`
##  [1] "CDC45" "CDC6"  "CDC7"  "CDK2"  "CDT1"  "DBF4"  "GMNN"  "MCM10" "MCM2" 
## [10] "MCM3"  "MCM4"  "MCM5"  "MCM6"  "MCM7"  "MCM8"  "ORC1"  "ORC3"  "ORC5" 
## [19] "ORC6"  "POLA1" "POLA2" "POLE"  "POLE2" "POLE3" "POLE4" "PRIM1" "PRIM2"
## [28] "RPA1"  "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Cholesterol biosynthesis`
##  [1] "ACAT2"   "ARV1"    "CYP51A1" "DHCR24"  "DHCR7"   "EBP"     "FDFT1"  
##  [8] "FDPS"    "HMGCR"   "HMGCS1"  "HSD17B7" "IDI1"    "LBR"     "LSS"    
## [15] "MSMO1"   "MVD"     "MVK"     "NSDHL"   "PLPP6"   "PMVK"    "SC5D"   
## [22] "SQLE"    "SREBF1"  "SREBF2"  "TM7SF2" 
## 
## [[1]]$`DOWN genesets.DNA strand elongation`
##  [1] "CDC45" "DNA2"  "FEN1"  "GINS1" "GINS2" "GINS3" "GINS4" "LIG1"  "MCM2" 
## [10] "MCM3"  "MCM4"  "MCM5"  "MCM6"  "MCM7"  "MCM8"  "PCNA"  "POLA1" "POLA2"
## [19] "POLD1" "POLD2" "POLD3" "POLD4" "PRIM1" "PRIM2" "RFC1"  "RFC2"  "RFC3" 
## [28] "RFC4"  "RFC5"  "RPA1"  "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Defective pyroptosis`
##  [1] "DNMT1"  "DNMT3A" "DNMT3B" "EED"    "EZH2"   "H2AFX"  "POLA1"  "POLA2" 
##  [9] "PRIM1"  "PRIM2"  "RBBP4"  "RBBP7"  "SUZ12" 
## 
## [[1]]$`DOWN genesets.Folding of actin by CCT/TriC`
## [1] "ACTB"  "CCT2"  "CCT3"  "CCT4"  "CCT5"  "CCT6A" "CCT7"  "CCT8"  "TCP1" 
## 
## [[1]]$`DOWN genesets.Formation of tubulin folding intermediates by CCT/TriC`
##  [1] "CCT2"   "CCT3"   "CCT4"   "CCT5"   "CCT6A"  "CCT7"   "CCT8"   "TCP1"  
##  [9] "TUBA1A" "TUBA1B" "TUBA1C" "TUBA4A" "TUBA8"  "TUBAL3" "TUBB2A" "TUBB3" 
## [17] "TUBB4A" "TUBB4B" "TUBB6" 
## 
## [[1]]$`DOWN genesets.Heme biosynthesis`
##  [1] "ABCG2"  "ALAD"   "ALAS1"  "COX10"  "COX15"  "CPOX"   "FECH"   "FLVCR1"
##  [9] "HMBS"   "PPOX"   "UROD"   "UROS"  
## 
## [[1]]$`DOWN genesets.Lagging Strand Synthesis`
##  [1] "DNA2"  "FEN1"  "LIG1"  "PCNA"  "POLA1" "POLA2" "POLD1" "POLD2" "POLD3"
## [10] "POLD4" "PRIM1" "PRIM2" "RFC1"  "RFC2"  "RFC3"  "RFC4"  "RFC5"  "RPA1" 
## [19] "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Leading Strand Synthesis`
##  [1] "PCNA"  "POLA1" "POLA2" "POLD1" "POLD2" "POLD3" "POLD4" "PRIM1" "PRIM2"
## [10] "RFC1"  "RFC2"  "RFC3"  "RFC4"  "RFC5" 
## 
## [[1]]$`DOWN genesets.Mismatch Repair`
##  [1] "EXO1"  "LIG1"  "MLH1"  "MSH2"  "MSH6"  "PCNA"  "PMS2"  "POLD1" "POLD2"
## [10] "POLD3" "POLD4" "RPA1"  "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Mismatch repair (MMR) directed by MSH2:MSH3 (MutSbeta)`
##  [1] "EXO1"  "LIG1"  "MLH1"  "MSH2"  "PCNA"  "PMS2"  "POLD1" "POLD2" "POLD3"
## [10] "POLD4" "RPA1"  "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Mismatch repair (MMR) directed by MSH2:MSH6 (MutSalpha)`
##  [1] "EXO1"  "LIG1"  "MLH1"  "MSH2"  "MSH6"  "PCNA"  "PMS2"  "POLD1" "POLD2"
## [10] "POLD3" "POLD4" "RPA1"  "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.PCNA-Dependent Long Patch Base Excision Repair`
##  [1] "APEX1" "FEN1"  "LIG1"  "PCNA"  "POLD1" "POLD2" "POLD3" "POLD4" "POLE" 
## [10] "POLE2" "POLE3" "POLE4" "RFC1"  "RFC2"  "RFC3"  "RFC4"  "RFC5"  "RPA1" 
## [19] "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Polymerase switching`
##  [1] "PCNA"  "POLA1" "POLA2" "POLD1" "POLD2" "POLD3" "POLD4" "PRIM1" "PRIM2"
## [10] "RFC1"  "RFC2"  "RFC3"  "RFC4"  "RFC5" 
## 
## [[1]]$`DOWN genesets.Processive synthesis on the lagging strand`
##  [1] "DNA2"  "FEN1"  "LIG1"  "PCNA"  "POLA1" "POLA2" "POLD1" "POLD2" "POLD3"
## [10] "POLD4" "PRIM1" "PRIM2" "RPA1"  "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Removal of the Flap Intermediate`
##  [1] "DNA2"  "FEN1"  "PCNA"  "POLA1" "POLA2" "POLD1" "POLD2" "POLD3" "POLD4"
## [10] "PRIM1" "PRIM2" "RPA1"  "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Resolution of AP sites via the multiple-nucleotide patch replacement pathway`
##  [1] "APEX1" "FEN1"  "LIG1"  "PARG"  "PARP1" "PARP2" "PCNA"  "POLD1" "POLD2"
## [10] "POLD3" "POLD4" "POLE"  "POLE2" "POLE3" "POLE4" "RFC1"  "RFC2"  "RFC3" 
## [19] "RFC4"  "RFC5"  "RPA1"  "RPA2"  "RPA3" 
## 
## [[1]]$`DOWN genesets.Resolution of Abasic Sites (AP sites)`
##  [1] "APEX1" "FEN1"  "LIG1"  "LIG3"  "MBD4"  "MPG"   "MUTYH" "NEIL1" "NEIL2"
## [10] "NTHL1" "OGG1"  "PARG"  "PARP1" "PARP2" "PCNA"  "PNKP"  "POLD1" "POLD2"
## [19] "POLD3" "POLD4" "POLE"  "POLE2" "POLE3" "POLE4" "RFC1"  "RFC2"  "RFC3" 
## [28] "RFC4"  "RFC5"  "RPA1"  "RPA2"  "RPA3"  "SMUG1" "TDG"   "UNG"   "XRCC1"
## 
## [[1]]$`DOWN genesets.Unwinding of DNA`
##  [1] "CDC45" "GINS1" "GINS2" "GINS3" "GINS4" "MCM2"  "MCM3"  "MCM4"  "MCM5" 
## [10] "MCM6"  "MCM7"  "MCM8"

Session information

save.image("example6.Rdata")

sessionInfo()
## R Under development (unstable) (2025-02-24 r87814)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 24.04.1 LTS
## 
## Matrix products: default
## BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 
## LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.26.so;  LAPACK version 3.12.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: Etc/UTC
## tzcode source: system (glibc)
## 
## attached base packages:
## [1] stats4    stats     graphics  grDevices utils     datasets  methods  
## [8] base     
## 
## other attached packages:
##  [1] kableExtra_1.4.0            DESeq2_1.47.5              
##  [3] SummarizedExperiment_1.37.0 Biobase_2.67.0             
##  [5] MatrixGenerics_1.19.1       matrixStats_1.5.0          
##  [7] GenomicRanges_1.59.1        GenomeInfoDb_1.43.4        
##  [9] IRanges_2.41.3              S4Vectors_0.45.4           
## [11] BiocGenerics_0.53.6         generics_0.1.3             
## [13] getDEE2_1.17.3              mitch_1.19.5               
## 
## loaded via a namespace (and not attached):
##  [1] tidyselect_1.2.1        viridisLite_0.4.2       dplyr_1.1.4            
##  [4] bitops_1.0-9            fastmap_1.2.0           GGally_2.2.1           
##  [7] promises_1.3.2          digest_0.6.37           mime_0.13              
## [10] lifecycle_1.0.4         magrittr_2.0.3          compiler_4.5.0         
## [13] sass_0.4.9              rlang_1.1.5             tools_4.5.0            
## [16] yaml_2.3.10             knitr_1.50              S4Arrays_1.7.3         
## [19] htmlwidgets_1.6.4       DelayedArray_0.33.6     plyr_1.8.9             
## [22] xml2_1.3.8              RColorBrewer_1.1-3      BiocParallel_1.41.2    
## [25] abind_1.4-8             KernSmooth_2.23-26      purrr_1.0.4            
## [28] grid_4.5.0              caTools_1.18.3          xtable_1.8-4           
## [31] colorspace_2.1-1        ggplot2_3.5.1           scales_1.3.0           
## [34] gtools_3.9.5            MASS_7.3-65             cli_3.6.4              
## [37] rmarkdown_2.29          crayon_1.5.3            rstudioapi_0.17.1      
## [40] httr_1.4.7              reshape2_1.4.4          cachem_1.1.0           
## [43] stringr_1.5.1           network_1.19.0          parallel_4.5.0         
## [46] BiocManager_1.30.25     XVector_0.47.2          vctrs_0.6.5            
## [49] Matrix_1.7-3            jsonlite_2.0.0          echarts4r_0.4.5        
## [52] beeswarm_0.4.0          systemfonts_1.2.1       locfit_1.5-9.12        
## [55] jquerylib_0.1.4         tidyr_1.3.1             glue_1.8.0             
## [58] statnet.common_4.11.0   codetools_0.2-20        ggstats_0.9.0          
## [61] stringi_1.8.7           gtable_0.3.6            later_1.4.1            
## [64] UCSC.utils_1.3.1        munsell_0.5.1           htm2txt_2.2.2          
## [67] tibble_3.2.1            pillar_1.10.1           htmltools_0.5.8.1      
## [70] gplots_3.2.0            GenomeInfoDbData_1.2.14 R6_2.6.1               
## [73] evaluate_1.0.3          shiny_1.10.0            lattice_0.22-6         
## [76] bslib_0.9.0             httpuv_1.6.15           Rcpp_1.0.14            
## [79] svglite_2.1.3           coda_0.19-4.1           gridExtra_2.3          
## [82] SparseArray_1.7.7       xfun_0.51               pkgconfig_2.0.3