Entering edit mode
Aini
•
0
@aini-24536
Last seen 3.8 years ago
Hello,, I have a minor question. In topGO enrichment analysis when GOdata is produced the ontology is selected as MF, BP or CC. Is there any way that we can select all three ontologies?
GOdata <- new("topGOdata", ontology = "MF", allGenes = geneList, annot = annFUN.gene2GO, gene2GO = geneID2GO)
This is not exactly true. There are no cross-ontology mappings in GO.db, because they all get stripped out. There are a couple of reasons for that. We used to get some SQL dumps from geneontology.org that we parsed to generate the GO.db package, but they stopped providing those a few years back, and now we parse some OBO files instead.
Rather than reinvent the whole thing from scratch, we use the OBO files to generate what we previously downloaded and then just run the files we generate through the existing pipeline. One such file is the transitive closure for all terms in the DAG. Generating the transitive closure from the OBO was failing the last time we did this (last November) and it took a bit of sleuthing to figure out that this was happening because there are graphs that include terms from more than one ontology! While those graphs may make sense from a technical perspective they made it impossible to build the GO.db package, and didn't make any sense in the context of what we generally use GO.db for (mostly to do Fisher's exact test). So we (I) split the data into the three ontologies, severing any cross-ontology edges and then generated the transitive closure, which worked.
It's not clear to me if/how this might differ from what we used to download, particularly since the whole GO DAG has been reworked in the intervening period. So maybe these cross-ontology graphs are new? But anyway trying to do a conditional Fisher's exact test using a GO DAG that goes across ontologies doesn't make much sense, and would be very surprising to people if that happened, so there are no cross-ontology edges in GO.db although you can find some at geneontology.org.
Oh, that's new, last time I looked at the obo files they didn't have any link between them. From their website: "The three GO ontologies are is a disjoint, meaning that no is a relations operate between terms from the different ontologies. However, other relationships such as part of and regulates do operate between the GO ontologies.". Glad there is now more info besides is a on the ontology. Thanks for the information James!