[BioC] GOseq at a specific level ?

Nadia Davidson nadia.davidson at mcri.edu.au
Tue Mar 25 06:03:27 CET 2014

 <amandine.fournier at ...> writes:
> Dear all,
> I am using GOseq on a list of diffentially expressed genes and I 
> would like to do an analysis at a specific GO
> level (level 4 for example) instead of the complete GO.
> Is there a tool in GOseq that already does it ? Or do I have to 
> prepare the file for the gene2cat option by myself ?
> A somewhat similar question is : how to use the GOslim ontologies 
> (a subset of the terms in the whole GO) in
> GOseq ?
> Thank you in advance.
> Best regards,
> Amandine
> -----
> Amandine Fournier
> Lyon Neuroscience Research Center
> & Lyon Civil Hospital (France)

Dear Amandine,

Goseq doesn't let you select a specific GO level, but like you suggested, it's
possible to do this manually with the gene2cat option. This would
require the level of each GO term to be know. Unfortunately I can't point you
towards a database with this information, but perhaps someone else on the
bioconductor list knows.

For GOslim, the situation is similar, in that you need to provide the gene2cat
list yourself. Below is an example of how to create this using biomart.

# First get the GOslim terms from biomart
ensembl = useMart("ensembl",dataset="hsapiens_gene_ensembl")

# Now get the mapping between genes and all GO terms

# Filter the list for only GOslim terms
go_slim2cat=lapply(go,function(x){ x[x %in% go_slim]  })

# Run goseq with the slimmed list

By the way, it came to our attention recently that goseq will sometimes
rank the root GO terms like, GO:0003674 - Molecular Function, very high. This
is to do with the way goseq handles genes with no GO annotation. It you
find this is swamping your results you might like to try the developmental
version of goseq, which gives an alternative way of handling genes without 
GO annotation. 


More information about the Bioconductor mailing list