I am trying to use chAMP pipeline to analysis EPIC methylation data. In the chAMP pipeline, there is an embeded GSEA module called chAMP.gsea and it seems to support customized CpGlist or Genelist from its help document. (see the following CpGlist and Genelist)
Usage champ.GSEA(beta=myNorm, DMP=myDMP[], DMR=myDMR, CpGlist=NULL, Genelist=NULL, pheno=myLoad$pd$Sample_Group, method="fisher", arraytype="450K", Rplot=TRUE, adjPval=0.05) Arguments beta A matrix of values representing the methylation scores for each sample (M or B). Better to be imputed and normalized data. (default = myNorm) DMP Results from champ.DMP() function. (default = myDMP) DMR Results from champ.DMR() function. (default = myDMR) CpGlist Apart from previous parameters, if you have any other CpGs list want to do GSEA, you can input them here as a list. (default = NULL) Genelist Apart from previous parameters, if you have any other Gene list want to do GSEA. you can inpute them here as a list. (default = NULL) pheno If use ebayes method, user needs to provide phenotype information to conduct global test. (default = myLoad$pd$Sample_Group) method Which method would be used to do GSEA?"gometh" or "fisher". (default = "gometh") arraytype Which kind of array your data set is? (default = "450K") Rplot If gometh method was chosen, should Probability Weight plot will be plotted. More information please check gometh package. (default = TRUE) adjPval Adjusted p value cutoff for all calculated GSEA result. (default = 0.05)
However, there isn't an example for how to use these two parameters and my code is as following:
dmg.enhancer <- dmp.res[which(dmp.res$deltaBeta <= (-0.2) & dmp.res$adj.P.Val < 0.05 & dmp.res$isEnhancer == TRUE),"gene"]; dmg.enhancer <- dmg.enhancer[which(dmg.enhancer != "")] load(file = file.path(resDir.NOFILTER.C1vsC2,"myNorm.rda")) load(file = file.path(resDir.NOFILTER.C1vsC2,"myDMP.rda")) load(file = file.path(resDir.NOFILTER.C1vsC2,"myDMR.rda")) load(file = file.path(resDir.NOFILTER.C1vsC2,"myLoad.rda")) Genelist <- list(); Genelist[["dmg.enhancer"]] <- dmg.enhancer tmp <- champ.GSEA(Genelist = Genelist,arraytype = "EPIC")
Following is the demo of my Genelist:
> Genelist $`dmg.enhancer`  "EPHB2" "LYRM1" "NUAK2" "CEP170" "DICER1" "FNIP1" "MAST2" "C5orf22" "HIPK2"  "TTC7B" "NT5DC1" "TRIO" "C3orf26" "TTC7B" "FOXP1" "SNX2" "C2orf86" "PDE4D"
And I got the error all the time:
[===========================] [<<<< ChAMP.GSEA START >>>>>] ----------------------------- Error in if (names(Genelist) == NULL | lengthis.na(names(Genelist))) != : argument is of length zero
If there is anyone could give me some hint or an example of how to use these two parameters.