Hi Biostar users,
I am working with clusterprofiler enrichKegg function
KEGG_all = enrichKEGG(regulated.gene$entrez, organism="human")
I have used library(org.Hs.eg.db)
to convert gene names(Symbols)
to Entrez ID which is the possible input to use this function.
However I am seeing strange message and I am not sure what could be the reason?
--> No gene can be mapped....
--> Expected input gene ID: 7364,127,574537,5538,4351,221
--> return NULL...
Does this means the IDs I am providing have no pathways associated? In that case its not correct because entrez ids I am using have pathways associated except few which don't have are listed as NA.
names=c("57801","2152","54873","7412","148867","1435","90874","NA","2702","NA","1520,","3371","7185","26468","286336","NA","22829")
Due to this I am unable to understand why this message is displayed?
Looking forward for some help.
Are you sure those entrez ID's are for human genes? I checked a few and none seemed to be human proteins.
I am quite sure. The reason is because I cant ever find these IDs in my file.
--> No gene can be mapped.... --> Expected input gene ID: 7364,127,574537,5538,4351,221 --> return NULL...
I used standard conversion from of Symbols to Entrez ids.res$symbol = mapIds(org.Hs.eg.db, keys=row.names(res), column="SYMBOL", keytype="ENSEMBL", multiVals="first")
res$entrez = mapIds(org.Hs.eg.db, keys=row.names(res), column="ENTREZID", keytype="ENSEMBL", multiVals="first"
res$name = mapIds(org.Hs.eg.db, keys=row.names(res), column="GENENAME", keytype="ENSEMBL", multiVals="first")
Which one you checked? the one where its No gene can be mapped?
Thanks
https://www.ncbi.nlm.nih.gov/protein/7364
https://www.ncbi.nlm.nih.gov/protein/5538
Other ID's in the list above seem to be nucleotide ID's.
These genes are from database, not your input gene list.
Hello,
I am also using same function enrichKEGG. Can you please explain how problem was resolved for error
I'm also getting the same error when trying to use the enrichMKEGG function. The same list of ENTREZ IDs work for enrichKEGG, but not enrichMKEGG. I've tried changing the limits of GSSize but still no solution.
Can anyone help with this?
Because None of these genes are included in
KEGG module database
. You can check the gene_list usingbitr_kegg
:Thanks your your reply! I checked my genelists and for all of them 100% of input genes failed to map. Would this be expected or is there potentially a problem with the gene ids that I have? For example, one genelist has 166 genes - how likely is it that none of these were in the KEGG module database? Many thanks!
It could be none of your 166 genes were in KEGG module database (a manual curated database). you can try KEGG Pathway, or other databases.
I am having the same problem too... The code was previously working fine. Have you guys sorted it out?
use_internal_data=TRUE, add the params maybe can solve the problem.
KEGG analysis need reading KEGG annotation online, so if your network is bad, it maybe failed.
What versions of BioConductor/clusterProfiler are you using? I had problems before updating to Bioconductor 3.16 and clusterProfiler 4.6.2, then things worked for me.