Hello
I'm working with the ViSEAGO package and am using the function Custom2GO to make a database to use for Enrichment Analysis down stream. I have a column labled GOID that contains all of my go id numbers. My problem is that some of the numbers are able to map to GO.db and others are not yielding an error...
Is there a way for me to verify which of 360,000 GO ids are in the GO.db? right now I'm just selecting the ones that don't throw the error however the list is to long for me to got thru each one. in this example goa_file_trimmed.csv is the the trimmed file with GO terms I know are mapping correctly. goa_file_untrimmed.csv includes a single row where a GO id is not found in GO.DB.
does anyone have some suggestions?
# connect to EntrezGene
EntrezGene<-ViSEAGO::EntrezGene2GO() #works
# connect to Custom file untrimmed
Custom<-ViSEAGO::Custom2GO("C:/Users/folder/Downloads/goa_file_untrimmed.csv")
#gives the following error
"Error in ViSEAGO::Custom2GO("C:/Users/folder/Downloads/goa_file_untrimmed.csv") :
GOID must be a valid identifiant. see select(GO.db,columns=columns(GO.db),keys=keys(GO.db)"
## connect to Custom file that has been trimmed
Custom<-ViSEAGO::Custom2GO("C:/Users/folder/Downloads/goa_file_trimmed.csv") #works
#and returns
"'select()' returned 1:1 mapping between keys and columns"
I figured out a work around. keys(G0.db) give the list of GO id numbers. i then used %in% and %notin% to determine which of my own GO terms to keep and which to discard hence avoiding the error.
:)