gogadget: an R package for go analysis visualization and interpretation
I have developed an R package, which can help in the interpretation and visualization of GO enrichment analysis. The strategy of this package is to first do goseq analysis for your RNA-seq data. Subsequently, gogadget offers functions to make sense out of these goseq results.
First function gogadget.p.adjust
adds an adjusted p-value to the results.
Second function gogadget.explore
explores possible (ideal) filtering settings. The idea is to filter out GO terms that are too general or too specific.
Third function gogadget.filter
filters with the ideal settings (found with the previous function).
Fourth function gogadget.heatmap
groups the GO terms that are similar together. Similarity is based on overlapping genes between the terms.
Fifth and sixth functions, gogadget.cytoscape
and gogadget.gmt
, respectively, can export your filtered results to cytoscape EnrichmentMap.
The package is developed in R 3.3.2. on windows 7, and was also tested on Ubuntu 14.04. To install the package, download the tar.gz file from https://sourceforge.net/projects/gogadget/ and use the following code in R:
install.packages( "C:/your/directory/gogadget_2.0.tar.gz", repos = NULL, type="source")
I have written an extensive user's guide, which is also available on https://sourceforge.net/projects/gogadget/. Furthermore, there is a case study which you can try (files also on sourceForge).
Please cite the following paper if you publish results obtained using gogadget:
Nota, B. (2017), Gogadget: an R Package for Interpretation and Visualization of GO Enrichment Results. Mol. Inf. May;36(5-6). doi: 10.1002/minf.201600132
Let me know if there are questions or comments. Thank you.
Ben
Hi Ben! I'm excited to try gogadget. However, I obtained my GO enrichment results using a different tool from GOseq. Is there a way for me to format my data so that I can still use gogadget despite not using GOseq? I have the GO IDs, adjusted p-values, gene ratios, etc, in a dataframe.
Thank you, Jenny
Hi Jenny,
I have not tried to use a different enrichment method, but depending on what function you want to use, I think it is possible.
You'll need to rename your columns probably, so that the function will recognize what column to use. If you type in the function in your console you can see how the function works, you'll recognize which column name it will take. Good luck.
Hi Ben,
Thank you for the reply!
I also went through the gogadget user manual. I see that the heatmap has the enriched GO terms on both axes. Is there a way to generate this heatmap to compare GO terms that are enriched in different samples (GO terms on one axis, samples on the other)?
Thank you
Hi Jenny,
You are right, the heatmap and overlap function are to pair wise compare the GO terms from the same experiment. The idea behind it is that many GO terms are actually very similar (share the same genes) but are called slightly different. These heatmaps are meant to group the redundant GO terms.
What you want to do is more something you'll have to do with cluster profiler. Or you can try to write some code yourself, if you like coding.