Help with running egsea()
1
0
Entering edit mode
Chris ▴ 20
@3fdb6f97
Last seen 4 months ago
United States

Hi all,

I would like to find which pathways are different between 2 groups. After getting very helpful support on this forum, I got advice to use egsea which combine some methods. However, I got this error:

    gsa = egsea(fit2, contrasts = contrast_matrix, gs.annots = gs.annots, baseGSEAs = baseMethods, sort.by = "avg.rank", num.threads = 4, report = FALSE)
EGSEA analysis has started
##------ Mon May  6 15:28:58 2024 ------##
Error in egsea.main(voom.results, contrasts, gs.annots, baseGSEAs, combineMethod,  : 
  (is(voom.results, "list") && "ids" %in% names(voom.results)) ||  .... is not TRUE

If I try to get voom.results from fit2:

geneIDs <- rownames(fit2$coefficients) 
testStats <- fit2$coefficients          
pValues <- fit2$p.value                

voom.results <- list(
  ids = geneIDs,
  t = testStats,
  p = pValues
)
gsa = egsea(voom.results, contrasts = contrast_matrix, gs.annots = gs.annots,
+             symbolsMap = v$genes, baseGSEAs = baseMethods, sort.by = "avg.rank", num.threads = 4, report = FALSE)
EGSEA analysis has started
##------ Tue May  7 15:17:18 2024 ------##
Log fold changes are estimated using limma package ... 
Error in runStandardLimmaDEA(voom.results, contrast, logFC.cutoff, fdr.cutoff) : 
  is(voom.results, "EList") is not TRUE

Googling this error but didn't find any helpful information. Seem fit2 is not an appropriate parameter in this case. Seem I need Large EList object to run but don't know how to get it. Monther Alhamdoosh haven't online on this forum for 5 years, so hope anyone ran this tool successful can help. Thank you so much!

EGSEA • 702 views
ADD COMMENT
1
Entering edit mode
@james-w-macdonald-5106
Last seen 2 days ago
United States

There are no arguments to egsea.base, as it is meant only as a helper function to return the different methods. In addition, if you are using array data, you want to use egsea.ma. This is all outlined in the help page (which I just read in order to provide this answer).

1
Entering edit mode

I don't understand the last question, but do look at the msigdb.gsets argument to buildIdx in the help page for that function.

ADD REPLY
0
Entering edit mode

Thanks James! I update the question. The last question mean when we use buildIdx(), could we use gene symbol instead of entrezID. However, I decide to use entrezID as the vignettes for simplicity. https://www.bioconductor.org/packages/release/bioc/vignettes/EGSEA/inst/doc/EGSEA.pdf Yes, it is microarray data and I try egsea() first, egsea.ma() use different input.

ADD REPLY
1
Entering edit mode

Oh, right. Ideally you would use NCBI (aka Entrez gene) IDs because they are way more likely to be unique. Gene symbols are broken down into the ones used currently and the aliases, which stretch back into time and result in tons of duplicates.

ADD REPLY
0
Entering edit mode

I tried egsea.ma and got this error:

gsa = egsea.ma(numeric_matrix, vector_group, probe_annotation, contrasts = contrast_matrix, gs.annots = gs.annots, baseGSEAs = baseMethods, sort.by = "avg.rank", num.threads = 4, report = FALSE)
Error in dimnames(x) <- dn : length of 'dimnames' [2] not equal to array extent

It is hard to know which parameter is not correct in this case.

ADD REPLY

Login before adding your answer.

Traffic: 512 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6