Search
Question: clusterProfiler: exclude pathways and add gene names to cnetplot
0
gravatar for Mr.RB
4 months ago by
Mr.RB10
Mr.RB10 wrote:

Package: clusterProfiler by Guangchuang Yu


Let start with the example code (just the same as from the vignette):

library(clusterProfiler)
library(enrichplot)

# basic analysis
data(geneList, package="DOSE")
kegg <- gseKEGG(geneList = geneList, organism = 'hsa')

# plotting
cnetplot(kegg, categorySize="pvalue", foldChange=geneList)

I want to change two things in this cnetplot

  1. Exclude pathways in the graph
  2. Providing gene names instead of the IDs

 

1. Using the example:

require(dplyr)
head(kegg@result) %>% select(Description, setSize)

                               Description setSize
hsa04510                    Focal adhesion     188
hsa00982 Drug metabolism - cytochrome P450      49
hsa03050                        Proteasome      42
hsa03030                   DNA replication      33
hsa05340          Primary immunodeficiency      34
hsa04151        PI3K-Akt signaling pathway     320

Let's say I do not want the genes for the Focal adhesion in the cnet graph, how can this be accomplished.

2. using the example

Instead of the ids (such as 6891) I want to show the gene names which I provide myself (or maybe this can be done automatically)

 

 

 

ADD COMMENTlink modified 4 months ago by Guangchuang Yu1.0k • written 4 months ago by Mr.RB10
0
gravatar for Guangchuang Yu
4 months ago by
Guangchuang Yu1.0k
China/Guangzhou/Southern Medical University
Guangchuang Yu1.0k wrote:

1. same question posted on https://github.com/GuangchuangYu/DOSE/issues/20#issuecomment-391802809​.

please upgrade enrichplot to v >= 1.0.1, and then you can pass selected Pathway Names (selected from the Description column) to showCategory parameter.

 

2. you can use DOSE::setReadable to translate gene ID to gene symbol.

 

 

 

 

ADD COMMENTlink modified 4 months ago • written 4 months ago by Guangchuang Yu1.0k

Dear Guangchuang Yu,

Regarding question 1:

The version I currently have is  enrichplot_1.1.1.001  , which is >=1.0.1 as recommended by you. However when I pass a vector of pathway names to the cnetplot command ( like so x <- cnetplot(kegg, showCategory = kegg$Description[-2]) ) it will give this error:

Error in 1:n : NA/NaN argument
In addition: Warning messages:
1: In 1:n : numerical expression has 38 elements: only the first used
2: In V(g)$size[1:n] <- size : NAs introduced by coercion

Can't figure out what I'm doing wrong here.

Regarding question 2:

After re-reading this question I think I wasn't that clear with what I mean. I love that function, however what I meant is that I could pass this to cnetplot. Of course I could convert the ids to the gene names before calling the gseKEGG function, but this will probably interfere with mapping. Therefore, I want to be able to pass the gene names to cnetplot

ADD REPLYlink modified 4 months ago • written 4 months ago by Mr.RB10
  1. pls use enrichplot v >= 1.0.2 or v >= 1.1.2, which address the issue you reported.

  2. you misunderstand how setReadable works.


## run gseKEGG as usual

kk <- gseKEGG()

## convert gene ID to symbol

kk2 <- setReadable(kk) # refer to man for additional parameters

## plot

cnetplot(kk2)
ADD REPLYlink written 4 months ago by Guangchuang Yu1.0k

1. Thankyou! that version seems to work fine

2. The setReadable will of course only work whenever a db is available for the species in question, this is not the case for me. Therefore I mentioned gene names which I provide myself in my question I looked at the code of and thought I could easily mimic the setReadable function like so:

kegg@gene2Symbol <- as.character(gene.name.vector)
kegg@keytype <- 'auto'
kegg@result <- kegg@result
kegg@readable <- TRUE

However this will still only show the ids (and loses coloring in the network), instead the names I provided in the gene.name.vector, is there any way to provide these manually?

ADD REPLYlink modified 4 months ago • written 4 months ago by Mr.RB10
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.2.0
Traffic: 361 users visited in the last hour