gseKEGG - no gene can be mapped (RNAseq analysis)
1
1
Entering edit mode
14 months ago
redafazazi ▴ 30

Hi all,

I have been trying to extract the GSEA results from a list of genes after RNAseq analysis. It looks like my gseKEGG function is giving me problems. I am unable to generate a list of KEGG terms, it seems as my list of genes can't be mapped.

Could you help me please?

res_entrez <- dplyr::filter(res_ids, entrezid != "NA")
res_entrez <- res_entrez[which(duplicated(res_entrez$entrezid) == F), ]
foldchanges <- res_entrez$log2FoldChange
names(foldchanges) <- res_entrez$entrezid
foldchanges <- sort(foldchanges, decreasing = TRUE)
set.seed(123456)
gseaKEGG <- gseKEGG(geneList = foldchanges,
                organism = "mmu",
                nPerm = 1000,
                minGSSize = 20,
                pvalueCutoff = 0.05,
                verbose = FALSE)

I obtain the error message:

enter image description here

Here is what my "res_entrez" object looks like

enter image description here

RNAseq cluster-profiler KEGG GSEA • 3.0k views
ADD COMMENT
1
Entering edit mode
foldchanges <- res_entrez$log2FoldChange
..
..
gseaKEGG <- gseKEGG(geneList = foldchanges, ..

That doesn't make sense to me. I don't know the gseaKEGG function at all, but common sense dictates that geneList cannot be a vector of foldChange values.

ADD REPLY
0
Entering edit mode

I was basically trying to create a vector of foldchange values but with entrezID as name for each value.

ADD REPLY
0
Entering edit mode

Yes but then you'll need to set geneList to names(foldchanges), not foldchanges, no?

ADD REPLY
0
Entering edit mode

I will try that, thanks!

ADD REPLY
0
Entering edit mode

It doesn't work unfortunately

ADD REPLY
0
Entering edit mode

What does head(foldchanges) give you?

ADD REPLY
0
Entering edit mode

I also tried the test with DOSE package, it seems to work and the geneList seems similar.

data(geneList, package="DOSE")
kk2 <- gseKEGG(geneList     = geneList,
           organism     = 'hsa',
           minGSSize    = 120,
           pvalueCutoff = 0.05,
           verbose      = FALSE)
head(geneList)

My previous code:

gseaKEGG_sex <- gseKEGG(geneList = foldchanges_sex,
                    organism = "mmu",
                    keyType = 'ncbi-geneid',
                    nPerm = 1000,
                    minGSSize = 20,
                    pvalueCutoff = 0.05,
                    verbose = FALSE)

Here is what head of both geneList gives me enter image description here

ADD REPLY
0
Entering edit mode

You realize I'm not there debugging, right? What is foldchages_sex? Your previous code was not using that variable.

What happens when you provide gseKegg(geneList = c(18054, 219158, 54610), ...?

ADD REPLY
0
Entering edit mode

Hi, I remember gseKEGG has a parameter that can specify the gene name type(entrez, symbol..).

ADD REPLY
0
Entering edit mode

Yes nothing changes unfortunately

ADD REPLY
1
Entering edit mode
13 months ago
redafazazi ▴ 30

I got my answer from someone on bioconductor support : https://support.bioconductor.org/p/9149905/#9149918

Basically, I had to uninstall the package and install it again via the devtools function (GitHub page).

ADD COMMENT

Login before adding your answer.

Traffic: 1947 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