1
$\begingroup$

I have a list of Refseq accession numbers such as :

YP_009448812
YP_009448725
YP_009448701
NP_659591
around 10 000 acc_numbers...

and I'm looking for a tools in R or Python in order to get the corresponding Go term ids.

I tried the packages (org.Mm.eg.db) and (GO.db) but it does not work.

> Term(names(get(get("YP_009165174", org.Mm.egREFSEQ2EG), org.Mm.egGO)))
Error in .checkKeys(value, Rkeys(x), x@ifnotfound) : 
  value for "YP_009165174" not found
> Term(names(get(get("YP_009448701", org.Mm.egREFSEQ2EG), org.Mm.egGO)))
Error in .checkKeys(value, Rkeys(x), x@ifnotfound) : 
  value for "YP_009448701" not found
> Term(names(get(get("NP_659591", org.Mm.egREFSEQ2EG), org.Mm.egGO)))
Error in .checkKeys(value, Rkeys(x), x@ifnotfound) : 
  value for "NP_659591" not found
> Term(names(get(get("YP_009448812", org.Mm.egREFSEQ2EG), org.Mm.egGO)))
Error in .checkKeys(value, Rkeys(x), x@ifnotfound) : 
  value for "YP_009448812" not found

Does anyone have an idea? Thank you for your time. I cannot find a egREFSEQ2EG for viruses.

$\endgroup$
  • $\begingroup$ I've had very good experience with the biomaRt package (R, bioconductor) when it comes to mapping of different databases. If I don't forget about it, I can post an answer with code tomorrow. $\endgroup$ – Nicolai Feb 26 at 21:51
  • $\begingroup$ Ok thank you for your time then. The proteins are from Acc_number types and from virus organisms. The idea is to get the corresponding Go terms Id of these refseq Acc_numbers IDs in order to perform a Go term analysis. $\endgroup$ – Grendel Feb 26 at 21:56
1
$\begingroup$

So, I've looked a bit into this and the way you want to do your analysis won't work as you planned it. The main reason for this is that the GO database does not contain any virus species (as fas as I could see). The existence of the species you want to analyse in the database is important, because you need to have a background or reference gene set in order to perform enrichment analysis. Even if you're just interested in the IDs and want to perform the analysis by yourself, this means that you're unlikely to find anything for your genes/proteins in the GO databases.

Your best alternative is to use other annotation databases and either rely on their annotation or map their annotation to GO term ids (here is a list of all databases that allow this).

Your best bet for this is probably the UniProt database, since that should have entries for most of your proteins (though not all will have annotated GO terms). UniProt also offers an ID mapping tool that should be able to convert your RefSeq IDs to uniprot IDs, and also comes with an API for python. Do note that some of your IDs (the YP_ ones) are provisional RefSeq entries and the webpage tool only finds them in the 'UniParc' database (not UniProt KB).

Once you have the the UniProt IDs you should be able to map the available GO terms from there (see the last entries of the first link above).

$\endgroup$
  • $\begingroup$ Allright, thank you very much for all these informations!! It will be very useful for my project. Have a lovely day. $\endgroup$ – Grendel Feb 28 at 9:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.