Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How should I assign a pathway/pathways to the target genes when running nichenetr? #267

Closed
pariaaliour opened this issue May 7, 2024 · 3 comments

Comments

@pariaaliour
Copy link

pariaaliour commented May 7, 2024

Dear nicheNetR Team,

Following my nichnetr analysis, I have generated a list of target genes and I am interested in assigning pathways to these genes. Could you kindly advise if there is a function available within nicheNetR for pathway enrichment analysis of target genes? I am aware the we are talking about signaling pathway, but for example the neuroglia/ Neurexin signaling pathway could lead to different downstream pathways.

Additionally, I am considering conducting Weighted Gene Co-expression Network Analysis (WGCNA) and would like to integrate this analysis with the findings from nicheNetR. Is there a recommended approach to relate the results of these two analyses for a comprehensive understanding?

Thank you very much for your support and insights.

Best regards,

@Eisuan
Copy link

Eisuan commented May 10, 2024

Dear user,
in order to help you with your requests, I'll require additional information:

  1. How did you generate your list of target genes? Are those putative target genes of ligands (based on NicheNet predictions)?
  2. Is your data bulk-RNA seq or sc?

Unfortunately, we do not provide enrichment procedures based on target genes or predicted ligands in our package yet.

@pariaaliour
Copy link
Author

pariaaliour commented May 13, 2024

Thanks for your reply,
My data is single nucleus dataset. I followed the sender-focused approach. And the code I used to generate the target genes was:

active_ligand_target_links_df = best_upstream_ligands %>% lapply(get_weighted_ligand_target_links, geneset = geneset_oi, ligand_target_matrix = ligand_target_matrix, n = 200) %>% bind_rows() %>% drop_na()
active_ligand_target_links = prepare_ligand_target_visualization(ligand_target_df = active_ligand_target_links_df, ligand_target_matrix = ligand_target_matrix, cutoff = 0.33)

Moreover, if there is no function for enrichment analysis do you recommend any way to do so out of nichenetr (as you had one case in tutorial that target genes are the genes of a specific pathway)?
I appreciate your help on this!
Paria

@Eisuan
Copy link

Eisuan commented May 21, 2024

Dear Paria,
In this case, I suggest utilising an over-representation analysis approach (enrichment procedures based on Fisher's exact test / hypergeometric distribution). This kind of approach requires the definition of a gene universe, which is the set of all the possible genes that might have been chosen as "interesting ones" or "not interesting ones" (e.g. in differential expression analysis, the former genes are those "differentially expressed" and the latter ones are "not differentially expressed").
In your case, your universe set is composed of all the target genes described in the ligand-target matrix.

To perform the analysis, you can use TopGO since it conveniently allows you to adjust for the gene universe. This package also supports enrichment procedures that leverage limitations that could arise if you use hierarchical structured annotations, such as GO-terms (e.g. parent-child terms relationships and information redundancy. Please, refer to Alexa 2006 for more info). I can not help suggesting specific sources for pathway annotations, since their quality might be subjective.

Best regards,
Daniele

@Eisuan Eisuan closed this as completed Jul 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants