Introduction

Here we are splitting the dataset and testing concordance between LA and AL approaches.

suppressPackageStartupMessages({
  library("limma")
  library("eulerr")
  library("IlluminaHumanMethylation450kmanifest")
  library("IlluminaHumanMethylationEPICanno.ilm10b4.hg19")
  library("tictoc")
  library("mitch")
  library("kableExtra")
  library("beeswarm")
})

CORES=28

Load data

  • annotations

  • probe sets

  • gene sets

  • design matrix

  • mval matrix

anno <- getAnnotation(IlluminaHumanMethylationEPICanno.ilm10b4.hg19)
myann <- data.frame(anno[,c("UCSC_RefGene_Name","Regulatory_Feature_Group","Islands_Name","Relation_to_Island")])

gp <- myann[,"UCSC_RefGene_Name",drop=FALSE]
gp2 <- strsplit(gp$UCSC_RefGene_Name,";")
names(gp2) <- rownames(gp)
sets <- split(rep(names(gp2), lengths(gp2)), unlist(gp2))

summary(unlist(lapply(sets,length)))
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    1.00    9.00   24.00   49.68   55.00 6778.00
genesets <- gmt_import("https://ziemann-lab.net/public/gmea_prototype/ReactomePathways.gmt")

if (!file.exists("GSE158422_design.rds")) {
  download.file("https://ziemann-lab.net/public/gmea_prototype/GSE158422_design.rds", "GSE158422_design.rds")
}
design <- readRDS("GSE158422_design.rds")

if (!file.exists("GSE158422_design.rds")) {
 download.file("https://ziemann-lab.net/public/gmea_prototype/GSE158422_mx.rds","GSE158422_mx.rds")
}
mval <- readRDS("GSE158422_mx.rds")

boxplot(list("normal"=matrix(colMeans(mval),ncol=2)[,2],"tumor"=matrix(colMeans(mval),ncol=2)[,1]),
  main="mean probe methylation mval")

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")

GMEA FUNCTIONS

There are three approaches. First, limma can be done first, followed by aggregation by gene and then enrichment test (called LA). Secondly, probe values can be aggregated by gene, followed by limma, followed by enrichment test (AL). Third, probe values can be aggregated to gene level, and then aggregated to gene set level followed by limma test (AA).

LA

This process runs limma first and then aggregates the results before doing an enrichment test.

# limma
runlimma <- function(mval,design,myann) {
  fit.reduced <- lmFit(mval,design)
  fit.reduced <- eBayes(fit.reduced)
  summary(decideTests(fit.reduced))
  dm <- topTable(fit.reduced,coef=4, number = Inf)
  dm <- merge(myann,dm,by=0)
  dm <- dm[order(dm$P.Value),]
  rownames(dm) <- dm$Row.names
  dm$Row.names=NULL
  return(dm)
}

# aggregate
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["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)
    if ( length(tstats) > 2 ) {
      ttest <- t.test(tstats)
      pval <- ttest$p.value
    } else {
      pval = 1
    }
    res <- c("gene"=g,"nprobes"=myn,"mean"=mymean,
      "median"=mymedian, pval=pval)
  } )
  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 <- p.adjust(gme_res_df$pval)
  out <- list("df"=df,"gme_res_df"=gme_res_df)
  return(out)
}

# enrich
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","pval")
  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$pval),]
  res_df$logp <- -log10(res_df$pval )
  res_df$fdr <- p.adjust(res_df$pval,method="fdr")
  res_df[order(abs(res_df$pval)),]
  return(res_df)
}

AL: Aggregate limma functions

Functions for aggregate-limma-enrich approach.

# chromosome by chromosome will be much faster
magg <- function(mval,myann,cores=1){
  gn <- unique(unlist(strsplit( myann$UCSC_RefGene_Name ,";")))
  gnl <- strsplit( myann$UCSC_RefGene_Name ,";")
  gnl <- mclapply(gnl,unique,mc.cores=cores)
  myann$gnl <- gnl
  keep <- rownames(subset(myann,UCSC_RefGene_Name!=""))
  mx <- mval[rownames(mval) %in% keep,]
  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)
    }
  }
  med <- mclapply(gn,mymed,mc.cores=cores)
  med <- med[lapply(med,length)>0]
  medf <- do.call(rbind,med)
  return(medf)
}

chragg <- function(mval,myann,cores=1){
  annodf <- as.data.frame(anno)
  keep <- rownames(subset(myann,UCSC_RefGene_Name!=""))
  mx <- mval[rownames(mval) %in% keep,]
  chrs <- unique(anno$chr)
  myorder <- unlist(lapply(chrs,function(mychr) { nrow( annodf[annodf$chr==mychr,] ) } ))
  chrs <- chrs[order(-myorder)]
  leadercores <- floor(sqrt(cores))
  workercores <- ceiling(sqrt(cores))
  chrmedf <- mclapply(chrs,function(chr) {
    chrfrag <- annodf[annodf$chr==chr,]
    chrprobes <-rownames(chrfrag)
    chrmx <- mx[rownames(mx) %in% chrprobes,]
    chranno <- myann[rownames(myann) %in% chrprobes,]
    chrmedf <- magg(mval=chrmx,myann=chranno,cores=workercores)
    return(chrmedf)
  },mc.cores=leadercores)
  medf <- do.call(rbind, chrmedf)
  return(medf)
}

agglimma <- function(medf,design) {
  fit.reduced <- lmFit(medf,design)
  fit.reduced <- eBayes(fit.reduced)
  dmagg <- topTable(fit.reduced,coef=ncol(design), number = Inf)
  nondup <- !duplicated(dmagg$ID)
  dmagg <- dmagg[nondup,]
  rownames(dmagg) <- dmagg$ID
  dmagg$ID = NULL
  return(dmagg)
}

AA Aggregate-aggregate-limma functions

gsagg <- function(x,genesets,cores=1) {
  meds <- mclapply(1:length(genesets), function(i) {
    gs = genesets[[i]]
    xx <- x[rownames(x) %in% gs,]
    med <- apply(xx,2,median)
  },mc.cores=cores)
  mymed <- do.call(rbind,meds)
  rownames(mymed) <- names(genesets)
  as.data.frame(mymed)
}

aalimma <- function(agag,design) {
  fit.reduced <- lmFit(agag,design)
  fit.reduced <- eBayes(fit.reduced)
  dmagg <- topTable(fit.reduced,coef=ncol(design), number = Inf)
  return(dmagg)
}

aal <- function(mval,myann,genesets,design,cores=1) {
  medf <- chragg(mval,myann,cores=CORES)
  agag <- gsagg(x=medf,genesets=gs_symbols,cores=CORES)
  aal <- aalimma(agag=agag,design=design)
  return(aal)
}

aalres <- aal(mval=mval,myann=myann,genesets=gs_symbols,design=design,cores=CORES)
## Coefficients not estimable: patientpat32
## Warning: Partial NA coefficients for 1653 probe(s)
## Warning in .ebayes(fit = fit, proportion = proportion, stdev.coef.lim =
## stdev.coef.lim, : Estimation of var.prior failed - set to default value

Prep

# prep
sex <- as.data.frame(design)$sex
tumor <- as.data.frame(design)$tumor
patient <- as.character(unlist(lapply(1:ncol(mval),function(i) {c(i,i)})))
patient <- head(patient,ncol(mval))
design <- model.matrix(~ patient + tumor )
rownames(design) <- colnames(mval)

LA workflow split and analyse

split 74 samples 37 patients split into 18 + 18 Conduct LA workflow analysis. Then make overlap.

splitanalyze_la <- function(seed){
  set.seed(seed)
  a <- sample(1:37,18)
  a <- a[order(a)]
  nona <- setdiff(1:37,a)
  set.seed(seed)
  b <- sample(nona,18)
  b <- b[order(b)]
  a <- c( (a*2)-1 ,a*2 )
  a <- a[order(a)]
  b <- c( (b*2)-1 ,b*2 )
  b <- b[order(b)]

  design_a <- design[a,]
  design_a <- design_a[,colSums(design_a)>0]
  mval_a <- mval[,a]
  design_b <- design[b,]
  design_b <- design_b[,colSums(design_b)>0]
  mval_b <- mval[,b]

  # la1
  dm1 <- runlimma(mval_a,design_a,myann)
  dmagg1 <- agg(dm1,cores=CORES)
  m1 <- dmagg1$gme_res_df[,"mean",drop=FALSE]
  lares1 <- ttenrich(m=m1,genesets=gs_symbols,cores=CORES)

  # la2
  dm2 <- runlimma(mval_b,design_b,myann)
  dmagg2 <- agg(dm2,cores=CORES)
  m2 <- dmagg2$gme_res_df[,"mean",drop=FALSE]
  lares2 <- ttenrich(m=m2,genesets=gs_symbols,cores=CORES)

  list("lares1"=lares1,"lares2"=lares2)

}

lares <- lapply( seq(100,5000,100) ,splitanalyze_la)
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 839473 probe(s)
## Warning in .ebayes(fit = fit, proportion = proportion, stdev.coef.lim =
## stdev.coef.lim, : Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient6
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient34
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient5
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient4
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 839473 probe(s)

## Warning: Estimation of var.prior failed - set to default value

AL workflow split and analyse

splitanalyze_al <- function(seed){
  set.seed(seed)
  a <- sample(1:37,18)
  a <- a[order(a)]
  nona <- setdiff(1:37,a)
  set.seed(seed)
  b <- sample(nona,18)
  b <- b[order(b)]
  a <- c( (a*2)-1 ,a*2 )
  a <- a[order(a)]
  b <- c( (b*2)-1 ,b*2 )
  b <- b[order(b)]

  design_a <- design[a,]
  design_a <- design_a[,colSums(design_a)>0]
  mval_a <- mval[,a]
  design_b <- design[b,]
  design_b <- design_b[,colSums(design_b)>0]
  mval_b <- mval[,b]

  #al
  medf1 <- chragg(mval_a,myann,cores=CORES)
  magg1 <- agglimma(medf1,design_a)
  m1 <- as.data.frame(magg1$t)
  rownames(m1) <- rownames(magg1)
  colnames(m1) <- "t"
  alres1 <- ttenrich(m=m1,genesets=gs_symbols,cores=CORES)

  #al
  medf2 <- chragg(mval_b,myann,cores=CORES)
  magg2 <- agglimma(medf2,design_b)
  m2 <- as.data.frame(magg2$t)
  rownames(m2) <- rownames(magg2)
  colnames(m2) <- "t"
  alres2 <- ttenrich(m=m2,genesets=gs_symbols,cores=CORES)

  list("alres1"=alres1,"alres2"=alres2)
}

alres <- lapply( seq(100,5000,100) ,splitanalyze_al)
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 25424 probe(s)
## Warning in .ebayes(fit = fit, proportion = proportion, stdev.coef.lim =
## stdev.coef.lim, : Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient6
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient34
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient5
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient4
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 25424 probe(s)

## Warning: Estimation of var.prior failed - set to default value

AA workflow split and analyse

splitanalyze_aa <- function(seed){
  set.seed(seed)
  a <- sample(1:37,18)
  a <- a[order(a)]
  nona <- setdiff(1:37,a)
  set.seed(seed)
  b <- sample(nona,18)
  b <- b[order(b)]
  a <- c( (a*2)-1 ,a*2 )
  a <- a[order(a)]
  b <- c( (b*2)-1 ,b*2 )
  b <- b[order(b)]

  design_a <- design[a,]
  design_a <- design_a[,colSums(design_a)>0]
  mval_a <- mval[,a]
  design_b <- design[b,]
  design_b <- design_b[,colSums(design_b)>0]
  mval_b <- mval[,b]

  #aa1
  aares1 <- aal(mval=mval_a,myann=myann,genesets=gs_symbols,
    design=design_a,cores=CORES)

  #aa2
  aares2 <- aal(mval=mval_b,myann=myann,genesets=gs_symbols,
    design=design_b,cores=CORES)

  list("aares1"=aares1,"aares2"=aares2)
}

aares <- lapply( seq(100,5000,100) ,splitanalyze_aa)
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 1653 probe(s)
## Warning in .ebayes(fit = fit, proportion = proportion, stdev.coef.lim =
## stdev.coef.lim, : Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient6
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient34
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient8
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient5
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient4
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient7
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value
## Coefficients not estimable: patient9
## Warning: Partial NA coefficients for 1653 probe(s)

## Warning: Estimation of var.prior failed - set to default value

Compare

lacompare <- function(lares){
  lares1 <- lares[[1]]
  lares2 <- lares[[2]]
  lasig1 <- subset(lares1,fdr<0.05)
  lasig2 <- subset(lares2,fdr<0.05)
  lasig1_up <- rownames(subset(lasig1,t_median>0))
  lasig1_dn <- rownames(subset(lasig1,t_median<0))
  lasig2_up <- rownames(subset(lasig2,t_median>0))
  lasig2_dn <- rownames(subset(lasig2,t_median<0))

  total <- length(unique(c(lasig1_up,lasig2_up,lasig1_dn,lasig2_dn)))
  common <- length(intersect(lasig1_up, lasig2_up)) + length(intersect(lasig1_dn, lasig2_dn))
  discordant <- length(intersect(lasig1_up, lasig2_dn)) + length(intersect(lasig1_dn, lasig2_up))
  uncommon = total - common - discordant

  laout <- data.frame(total,common,discordant,uncommon)
  laout$p_comm <-laout$common / laout$total
  laout$p_disc <-laout$discordant / laout$total
  laout$p_uncom <-laout$uncommon / laout$total
  laout
}

alcompare <-function(alres){
  alres1 <- alres[[1]]
  alres2 <- alres[[2]]
  alsig1 <- subset(alres1,fdr<0.05)
  alsig2 <- subset(alres2,fdr<0.05)

  alsig1_up <- rownames(subset(alsig1,t_median>0))
  alsig1_dn <- rownames(subset(alsig1,t_median<0))
  alsig2_up <- rownames(subset(alsig2,t_median>0))
  alsig2_dn <- rownames(subset(alsig2,t_median<0))

  total <- length(unique(c(alsig1_up,alsig2_up,alsig1_dn,alsig2_dn)))
  common <- length(intersect(alsig1_up, alsig2_up)) + length(intersect(alsig1_dn, alsig2_dn))
  discordant <- length(intersect(alsig1_up, alsig2_dn)) + length(intersect(alsig1_dn, alsig2_up))
  uncommon = total - common - discordant
  result <- c("total"=total,"common"=common,"discordant"=discordant,"uncommon"=uncommon)

  alout <- data.frame(total,common,discordant,uncommon)
  alout$p_comm <-alout$common / alout$total
  alout$p_disc <-alout$discordant / alout$total
  alout$p_uncom <-alout$uncommon / alout$total
  alout
}

aacompare <-function(aares){
  aares1 <- aares[[1]]
  aares2 <- aares[[2]]
  aasig1 <- subset(aares1,adj.P.Val<0.05)
  aasig2 <- subset(aares2,adj.P.Val<0.05)

  aasig1_up <- rownames(subset(aasig1,logFC>0))
  aasig1_dn <- rownames(subset(aasig1,logFC<0))
  aasig2_up <- rownames(subset(aasig2,logFC>0))
  aasig2_dn <- rownames(subset(aasig2,logFC<0))

  total <- length(unique(c(aasig1_up,aasig2_up,aasig1_dn,aasig2_dn)))
  common <- length(intersect(aasig1_up, aasig2_up)) + length(intersect(aasig1_dn, aasig2_dn))
  discordant <- length(intersect(aasig1_up, aasig2_dn)) + length(intersect(aasig1_dn, aasig2_up))
  uncommon = total - common - discordant
  result <- c("total"=total,"common"=common,"discordant"=discordant,"uncommon"=uncommon)

  aaout <- data.frame(total,common,discordant,uncommon)
  aaout$p_comm <- aaout$common / aaout$total
  aaout$p_disc <- aaout$discordant / aaout$total
  aaout$p_uncom <-aaout$uncommon / aaout$total
  aaout
}
laout <- do.call(rbind,lapply(lares,lacompare))

alout <- do.call(rbind,lapply(alres,alcompare))

aaout <- do.call(rbind,lapply(aares,aacompare))

laout
##    total common discordant uncommon       p_comm      p_disc    p_uncom
## 1   1421    866          0      555 0.6094299789 0.000000000 0.39057002
## 2   1620   1242          1      377 0.7666666667 0.000617284 0.23271605
## 3    931    475          9      447 0.5102040816 0.009667025 0.48012889
## 4    935    483         12      440 0.5165775401 0.012834225 0.47058824
## 5   1271    483          0      788 0.3800157356 0.000000000 0.61998426
## 6   1277    554          0      723 0.4338292874 0.000000000 0.56617071
## 7   1592      0       1320      272 0.0000000000 0.829145729 0.17085427
## 8   1417      1        791      625 0.0007057163 0.558221595 0.44107269
## 9    904    419         11      474 0.4634955752 0.012168142 0.52433628
## 10  1611   1492          0      119 0.9261328367 0.000000000 0.07386716
## 11  1550      1        603      946 0.0006451613 0.389032258 0.61032258
## 12  1603      2        918      683 0.0012476606 0.572676232 0.42607611
## 13  1604     90         12     1502 0.0561097257 0.007481297 0.93640898
## 14  1519      2        726      791 0.0013166557 0.477946017 0.52073733
## 15  1562   1221          0      341 0.7816901408 0.000000000 0.21830986
## 16  1308      1        736      571 0.0007645260 0.562691131 0.43654434
## 17  1527    181          0     1346 0.1185330714 0.000000000 0.88146693
## 18  1603     12        838      753 0.0074859638 0.522769807 0.46974423
## 19  1260    389          0      871 0.3087301587 0.000000000 0.69126984
## 20  1588      0       1312      276 0.0000000000 0.826196474 0.17380353
## 21  1605     11        805      789 0.0068535826 0.501557632 0.49158879
## 22  1620   1521          0       99 0.9388888889 0.000000000 0.06111111
## 23   634      9         59      566 0.0141955836 0.093059937 0.89274448
## 24   923    441         12      470 0.4777898158 0.013001083 0.50920910
## 25  1597      0       1327      270 0.0000000000 0.830932999 0.16906700
## 26  1561    628          1      932 0.4023062140 0.000640615 0.59705317
## 27  1260    415          0      845 0.3293650794 0.000000000 0.67063492
## 28  1585      0       1304      281 0.0000000000 0.822712934 0.17728707
## 29  1568      1       1238      329 0.0006377551 0.789540816 0.20982143
## 30  1548     36        491     1021 0.0232558140 0.317183463 0.65956072
## 31  1557      1       1102      454 0.0006422608 0.707771355 0.29158638
## 32  1594   1435          0      159 0.9002509410 0.000000000 0.09974906
## 33  1525    195          0     1330 0.1278688525 0.000000000 0.87213115
## 34   903      1        100      802 0.0011074197 0.110741971 0.88815061
## 35   977      3         60      914 0.0030706244 0.061412487 0.93551689
## 36  1049      6        520      523 0.0057197331 0.495710200 0.49857007
## 37  1507    557          0      950 0.3696084937 0.000000000 0.63039151
## 38  1613     33        526     1054 0.0204587725 0.326100434 0.65344079
## 39  1506      3        764      739 0.0019920319 0.507304117 0.49070385
## 40  1562      1       1142      419 0.0006402049 0.731113956 0.26824584
## 41  1555     28        577      950 0.0180064309 0.371061093 0.61093248
## 42  1598      0       1460      138 0.0000000000 0.913642053 0.08635795
## 43  1549    230        106     1213 0.1484828922 0.068431246 0.78308586
## 44  1633      0       1524      109 0.0000000000 0.933251684 0.06674832
## 45  1426      1        928      497 0.0007012623 0.650771388 0.34852735
## 46  1057     14        434      609 0.0132450331 0.410596026 0.57615894
## 47   982      3        409      570 0.0030549898 0.416496945 0.58044807
## 48  1567   1269          0      298 0.8098276962 0.000000000 0.19017230
## 49  1513      5        740      768 0.0033046927 0.489094514 0.50760079
## 50   909      4        163      742 0.0044004400 0.179317932 0.81628163
alout
##    total common discordant uncommon    p_comm       p_disc   p_uncom
## 1   1049    367          0      682 0.3498570 0.0000000000 0.6501430
## 2    811    625          0      186 0.7706535 0.0000000000 0.2293465
## 3    865    598          1      266 0.6913295 0.0011560694 0.3075145
## 4   1147    295          0      852 0.2571927 0.0000000000 0.7428073
## 5    859    487          0      372 0.5669383 0.0000000000 0.4330617
## 6    853    570          0      283 0.6682298 0.0000000000 0.3317702
## 7    885    454          0      431 0.5129944 0.0000000000 0.4870056
## 8   1054    189          1      864 0.1793169 0.0009487666 0.8197343
## 9    904    589          0      315 0.6515487 0.0000000000 0.3484513
## 10  1059    353          0      706 0.3333333 0.0000000000 0.6666667
## 11   859    469          0      390 0.5459837 0.0000000000 0.4540163
## 12   986    493          0      493 0.5000000 0.0000000000 0.5000000
## 13   891    653          0      238 0.7328844 0.0000000000 0.2671156
## 14  1271    135          2     1134 0.1062156 0.0015735641 0.8922109
## 15   839    677          0      162 0.8069130 0.0000000000 0.1930870
## 16   865    539          0      326 0.6231214 0.0000000000 0.3768786
## 17   839    659          0      180 0.7854589 0.0000000000 0.2145411
## 18   984    557          0      427 0.5660569 0.0000000000 0.4339431
## 19  1023    514          0      509 0.5024438 0.0000000000 0.4975562
## 20  1064    219          0      845 0.2058271 0.0000000000 0.7941729
## 21   916    581          0      335 0.6342795 0.0000000000 0.3657205
## 22   896    639          0      257 0.7131696 0.0000000000 0.2868304
## 23   875    592          0      283 0.6765714 0.0000000000 0.3234286
## 24  1101    250          0      851 0.2270663 0.0000000000 0.7729337
## 25   865    623          0      242 0.7202312 0.0000000000 0.2797688
## 26  1007    295          0      712 0.2929494 0.0000000000 0.7070506
## 27  1025    597          4      424 0.5824390 0.0039024390 0.4136585
## 28   903    427          0      476 0.4728682 0.0000000000 0.5271318
## 29   964    337          1      626 0.3495851 0.0010373444 0.6493776
## 30   953    502          0      451 0.5267576 0.0000000000 0.4732424
## 31   796    573          0      223 0.7198492 0.0000000000 0.2801508
## 32   956    569          1      386 0.5951883 0.0010460251 0.4037657
## 33   980    642          0      338 0.6551020 0.0000000000 0.3448980
## 34   887    465          0      422 0.5242390 0.0000000000 0.4757610
## 35   844    630          0      214 0.7464455 0.0000000000 0.2535545
## 36   959    533          0      426 0.5557873 0.0000000000 0.4442127
## 37   842    462          0      380 0.5486936 0.0000000000 0.4513064
## 38   914    282          0      632 0.3085339 0.0000000000 0.6914661
## 39   966    407          0      559 0.4213251 0.0000000000 0.5786749
## 40   896    290          0      606 0.3236607 0.0000000000 0.6763393
## 41   937    410          0      527 0.4375667 0.0000000000 0.5624333
## 42   920    703          0      217 0.7641304 0.0000000000 0.2358696
## 43   887    671          0      216 0.7564825 0.0000000000 0.2435175
## 44   935    445          0      490 0.4759358 0.0000000000 0.5240642
## 45   825    653          1      171 0.7915152 0.0012121212 0.2072727
## 46   987    518          1      468 0.5248227 0.0010131712 0.4741641
## 47  1223    161          1     1061 0.1316435 0.0008176615 0.8675388
## 48  1056    532          0      524 0.5037879 0.0000000000 0.4962121
## 49   931    536          0      395 0.5757250 0.0000000000 0.4242750
## 50   962    468          0      494 0.4864865 0.0000000000 0.5135135
aaout
##    total common discordant uncommon    p_comm      p_disc   p_uncom
## 1    996    527          0      469 0.5291165 0.000000000 0.4708835
## 2    888    602          0      286 0.6779279 0.000000000 0.3220721
## 3    897    593          0      304 0.6610925 0.000000000 0.3389075
## 4   1151    365          0      786 0.3171156 0.000000000 0.6828844
## 5    818    490          0      328 0.5990220 0.000000000 0.4009780
## 6    904    426          0      478 0.4712389 0.000000000 0.5287611
## 7    960    446          0      514 0.4645833 0.000000000 0.5354167
## 8   1123    332          0      791 0.2956367 0.000000000 0.7043633
## 9    957    573          1      383 0.5987461 0.001044932 0.4002090
## 10   986    564          0      422 0.5720081 0.000000000 0.4279919
## 11  1003    427          0      576 0.4257228 0.000000000 0.5742772
## 12  1001    454          0      547 0.4535465 0.000000000 0.5464535
## 13   923    454          0      469 0.4918743 0.000000000 0.5081257
## 14  1208    453          3      752 0.3750000 0.002483444 0.6225166
## 15   840    551          0      289 0.6559524 0.000000000 0.3440476
## 16   853    574          0      279 0.6729191 0.000000000 0.3270809
## 17   921    600          0      321 0.6514658 0.000000000 0.3485342
## 18   915    476          0      439 0.5202186 0.000000000 0.4797814
## 19  1042    426          0      616 0.4088292 0.000000000 0.5911708
## 20  1101    253          0      848 0.2297911 0.000000000 0.7702089
## 21   969    556          0      413 0.5737874 0.000000000 0.4262126
## 22   912    539          0      373 0.5910088 0.000000000 0.4089912
## 23   877    598          0      279 0.6818700 0.000000000 0.3181300
## 24  1121    452          0      669 0.4032114 0.000000000 0.5967886
## 25   951    610          0      341 0.6414301 0.000000000 0.3585699
## 26   985    455          0      530 0.4619289 0.000000000 0.5380711
## 27   934    637          0      297 0.6820128 0.000000000 0.3179872
## 28   898    429          0      469 0.4777283 0.000000000 0.5222717
## 29  1069    304          0      765 0.2843779 0.000000000 0.7156221
## 30   973    492          0      481 0.5056526 0.000000000 0.4943474
## 31   908    380          0      528 0.4185022 0.000000000 0.5814978
## 32   974    636          0      338 0.6529774 0.000000000 0.3470226
## 33   963    599          0      364 0.6220145 0.000000000 0.3779855
## 34   989    382          0      607 0.3862487 0.000000000 0.6137513
## 35   972    556          0      416 0.5720165 0.000000000 0.4279835
## 36   881    487          0      394 0.5527809 0.000000000 0.4472191
## 37   908    422          0      486 0.4647577 0.000000000 0.5352423
## 38   965    406          0      559 0.4207254 0.000000000 0.5792746
## 39   985    400          0      585 0.4060914 0.000000000 0.5939086
## 40  1036    179          0      857 0.1727799 0.000000000 0.8272201
## 41   982    333          0      649 0.3391039 0.000000000 0.6608961
## 42   938    623          0      315 0.6641791 0.000000000 0.3358209
## 43   950    588          0      362 0.6189474 0.000000000 0.3810526
## 44   949    450          0      499 0.4741834 0.000000000 0.5258166
## 45   873    497          0      376 0.5693013 0.000000000 0.4306987
## 46  1049    553          0      496 0.5271687 0.000000000 0.4728313
## 47  1097    389          0      708 0.3546035 0.000000000 0.6453965
## 48  1004    609          0      395 0.6065737 0.000000000 0.3934263
## 49  1013    318          0      695 0.3139191 0.000000000 0.6860809
## 50   950    554          0      396 0.5831579 0.000000000 0.4168421

Session information

save.image("GSE158422_gmea.Rdata")

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] parallel  stats4    stats     graphics  grDevices utils     datasets 
## [8] methods   base     
## 
## other attached packages:
##  [1] beeswarm_0.4.0                                     
##  [2] kableExtra_1.3.4                                   
##  [3] mitch_1.12.0                                       
##  [4] tictoc_1.2                                         
##  [5] IlluminaHumanMethylationEPICanno.ilm10b4.hg19_0.6.0
##  [6] IlluminaHumanMethylation450kmanifest_0.4.0         
##  [7] minfi_1.46.0                                       
##  [8] bumphunter_1.42.0                                  
##  [9] locfit_1.5-9.8                                     
## [10] iterators_1.0.14                                   
## [11] foreach_1.5.2                                      
## [12] Biostrings_2.68.1                                  
## [13] XVector_0.40.0                                     
## [14] SummarizedExperiment_1.30.2                        
## [15] Biobase_2.60.0                                     
## [16] MatrixGenerics_1.12.3                              
## [17] matrixStats_1.0.0                                  
## [18] GenomicRanges_1.52.0                               
## [19] GenomeInfoDb_1.36.3                                
## [20] IRanges_2.34.1                                     
## [21] S4Vectors_0.38.2                                   
## [22] BiocGenerics_0.46.0                                
## [23] eulerr_7.0.0                                       
## [24] limma_3.56.2                                       
## 
## loaded via a namespace (and not attached):
##   [1] splines_4.3.1             later_1.3.1              
##   [3] BiocIO_1.10.0             bitops_1.0-7             
##   [5] filelock_1.0.2            tibble_3.2.1             
##   [7] preprocessCore_1.62.1     XML_3.99-0.14            
##   [9] lifecycle_1.0.3           lattice_0.21-9           
##  [11] MASS_7.3-60               base64_2.0.1             
##  [13] scrime_1.3.5              magrittr_2.0.3           
##  [15] sass_0.4.7                rmarkdown_2.25           
##  [17] jquerylib_0.1.4           yaml_2.3.7               
##  [19] httpuv_1.6.11             doRNG_1.8.6              
##  [21] askpass_1.2.0             DBI_1.1.3                
##  [23] RColorBrewer_1.1-3        abind_1.4-5              
##  [25] zlibbioc_1.46.0           rvest_1.0.3              
##  [27] quadprog_1.5-8            purrr_1.0.2              
##  [29] RCurl_1.98-1.12           rappdirs_0.3.3           
##  [31] GenomeInfoDbData_1.2.10   genefilter_1.82.1        
##  [33] annotate_1.78.0           svglite_2.1.1            
##  [35] DelayedMatrixStats_1.22.6 codetools_0.2-19         
##  [37] DelayedArray_0.26.7       xml2_1.3.5               
##  [39] tidyselect_1.2.0          beanplot_1.3.1           
##  [41] BiocFileCache_2.8.0       webshot_0.5.5            
##  [43] illuminaio_0.42.0         GenomicAlignments_1.36.0 
##  [45] jsonlite_1.8.7            multtest_2.56.0          
##  [47] ellipsis_0.3.2            survival_3.5-7           
##  [49] systemfonts_1.0.4         tools_4.3.1              
##  [51] progress_1.2.2            Rcpp_1.0.11              
##  [53] glue_1.6.2                gridExtra_2.3            
##  [55] xfun_0.40                 dplyr_1.1.3              
##  [57] HDF5Array_1.28.1          fastmap_1.1.1            
##  [59] GGally_2.1.2              rhdf5filters_1.12.1      
##  [61] fansi_1.0.4               openssl_2.1.1            
##  [63] caTools_1.18.2            digest_0.6.33            
##  [65] R6_2.5.1                  mime_0.12                
##  [67] colorspace_2.1-0          gtools_3.9.4             
##  [69] biomaRt_2.56.1            RSQLite_2.3.1            
##  [71] utf8_1.2.3                tidyr_1.3.0              
##  [73] generics_0.1.3            data.table_1.14.8        
##  [75] rtracklayer_1.60.1        prettyunits_1.2.0        
##  [77] httr_1.4.7                htmlwidgets_1.6.2        
##  [79] S4Arrays_1.0.6            pkgconfig_2.0.3          
##  [81] gtable_0.3.4              blob_1.2.4               
##  [83] siggenes_1.74.0           htmltools_0.5.6          
##  [85] echarts4r_0.4.5           scales_1.2.1             
##  [87] png_0.1-8                 knitr_1.44               
##  [89] rstudioapi_0.15.0         reshape2_1.4.4           
##  [91] tzdb_0.4.0                rjson_0.2.21             
##  [93] nlme_3.1-163              curl_5.0.2               
##  [95] cachem_1.0.8              rhdf5_2.44.0             
##  [97] stringr_1.5.0             KernSmooth_2.23-22       
##  [99] AnnotationDbi_1.62.2      restfulr_0.0.15          
## [101] GEOquery_2.68.0           pillar_1.9.0             
## [103] grid_4.3.1                reshape_0.8.9            
## [105] vctrs_0.6.3               gplots_3.1.3             
## [107] promises_1.2.1            dbplyr_2.3.4             
## [109] xtable_1.8-4              evaluate_0.22            
## [111] readr_2.1.4               GenomicFeatures_1.52.2   
## [113] cli_3.6.1                 compiler_4.3.1           
## [115] Rsamtools_2.16.0          rlang_1.1.1              
## [117] crayon_1.5.2              rngtools_1.5.2           
## [119] nor1mix_1.3-0             mclust_6.0.0             
## [121] plyr_1.8.8                stringi_1.7.12           
## [123] viridisLite_0.4.2         BiocParallel_1.34.2      
## [125] munsell_0.5.0             Matrix_1.6-1.1           
## [127] hms_1.1.3                 sparseMatrixStats_1.12.2 
## [129] bit64_4.0.5               ggplot2_3.4.3            
## [131] Rhdf5lib_1.22.1           KEGGREST_1.40.1          
## [133] shiny_1.7.5               memoise_2.0.1            
## [135] bslib_0.5.1               bit_4.0.5