Question: How to extract essential genes from pathway (essGene) using DEseq2/GAGE workflow?
0
3.0 years ago by
Michael0
Michael0 wrote:

Hello,

I have been conducting pathway analysis on my RNA-seq data using the Deseq2/GAGE workflow. I ran GAGE and it worked well generating a list of affected pathways. I used “KO” annotations from kegg.gsets (species=”ko”) as I am working on a non-model organism. I am now trying to extract data for essential member genes in my perturbed pathways with essGene() However, I keep getting the error message “Error in expdata[rownames(b)[sel], ] : incorrect number of dimensions”. Is this possibly because my input data is not a column for each sample as demonstrated for microarray data in the 2009 GAGE vignette but a vector of 1 set of pairwise log2fold changes generated by Deseq2? How can I resolve this issue? Any advice would be much appreciated, thanks.

Format of my data “deseq2.fc”- a vector with KO gene IDs as names and pairwise log2fold expression values:

Named num [1:5638] -0.0456 -0.2300 0.4829 -0.6356 0.6871 ...

 - attr(*, "names")= chr [1:5638] "K03598" "K12035" "K03556" "K16740"….

The code I used:

gageres <- gage(deseq2.fc, gsets= kegg.ko, ref=NULL, samp=NULL)

rownames(gageres$greater)[1:3] gs=unique(unlist(kegg.ko[rownames(gageres$greater)[1:3]]))

str(gs)

chr [1:1176] "K00234" "K00235" "K00236" "K00237" ...

# Everything seems to work up until this point below:

essData=essGene(gs, deseq2.fc, ref=NULL, samp=NULL)

Error in expdata[rownames(b)[sel], ] : incorrect number of dimensions

traceback() 1: essGene(gs, deseq2.fc, ref = NULL, samp = NULL)

gage gage package • 627 views
modified 3.0 years ago by Luo Weijun1.5k • written 3.0 years ago by Michael0
Answer: How to extract essential genes from pathway (essGene) using DEseq2/GAGE workflow
0
3.0 years ago by
Luo Weijun1.5k
United States
Luo Weijun1.5k wrote:
I guess you are following the code from gage tutorial section “8 Result Presentation and Intepretation” after you are done with the code from RNA-Seq workflow tutorial. They are not really meant to be used together directly. You can check the documentation for function essGene() by: ? essGene It works with matrices or matrix-like data structure, while your deseq2.fc is a numeric vector. That’s why you got error. If you want, you can try to convert it to a matrix (1-column) first, like: fc.mat=cbind(deseq2.fc) essData=essGene(gs, fc.mat, ref=NULL, samp=NULL) note that downstream heatmap may not work for 1-column matrices.

That solved my problem! Thank you very much.