[BioC] How to map KEGG gene IDs to gene names?
Martin Morgan
mtmorgan at fhcrc.org
Fri Dec 28 00:21:50 CET 2007
Hi Elliot -- not sure that this is the way to go here, but...
> details <- bget(paste(csp.genes.rno, collapse=" "))
> nchar(details) # one long character string
[1] 515265
> records <- strsplit(details, "///\\n")[[1]] # ///\n separates records
> length(records)
[1] 100
> length(unique(csp.genes.rno)) # hmm, a few missing...
[1] 165
> cat(records[[1]]) # 1 record, 1 character string; '\n' separates lines
ENTRY 113995 CDS R.norvegicus
NAME P2rx5
DEFINITION purinergic receptor P2X, ligand-gated ion channel, 5
ORTHOLOGY KO: K05219 purinergic receptor P2X, ligand-gated ion channel 5
PATHWAY PATH: rno04020 Calcium signaling pathway
PATH: rno04080 Neuroactive ligand-receptor interaction
POSITION 10q24
MOTIF Pfam: P2X_receptor
PROSITE: P2X_RECEPTOR
DBLINKS RGD: 620256
NCBI-GI: 31377508
NCBI-GeneID: 113995
Ensembl: ENSRNOG00000019208
UniProt: P51578
CODON_USAGE T C A G
T 8 20 0 4 9 8 1 0 5 10 0 1 7 5 0 6
C 5 9 2 18 5 4 6 0 2 6 1 17 4 5 2 7
A 8 16 6 6 5 7 5 3 7 16 11 22 4 5 0 7
G 6 7 5 18 8 14 5 2 9 17 7 21 5 9 4 14
AASEQ 455
MGQAAWKGFVLSLFDYKTAKFVVAKSKKVGLLYRVLQLIILLYLLIWVFLIKKSYQDIDT
SLQSAVVTKVKGVAYTNTTMLGERLWDVADFVIPSQGENVFFVVTNLIVTPNQRQGICAE
REGIPDGECSEDDDCHAGESVVAGHGLKTGRCLRVGNSTRGTCEIFAWCPVETKSMPTDP
LLKDAESFTISIKNFIRFPKFNFSKANVLETDNKHFLKTCHFSSTNLYCPIFRLGSIVRW
AGADFQDIALKGGVIGIYIEWDCDLDKAASKCNPHYYFNRLDNKHTHSISSGYNFRFARY
YRDPNGVEFRDLMKAYGIRFDVIVNGKAGKFSIIPTVINIGSGLALMGAGAFFCDLVLIY
LIRKSEFYRDKKFEKVRGQKEDANVEVEANEMEQERPEDEPLERVRQDEQSQELAQSGRK
QNSNCQVLLEPARFGLRENAIVNVKQSQILHPVKT
NTSEQ 1368
atgggccaggcggcctggaaggggtttgtgctgtctctgttcgactataagactgcaaag
ttcgtggtcgccaagagcaagaaggtggggctgctctaccgggtgctgcagctcatcatc
ctgttgtacttgctcatatgggtgtttctgataaagaagagttatcaggacattgacact
tccctgcagagtgctgtggtcaccaaagtcaagggggtggcctatactaacaccacgatg
cttggggaacggctctgggatgtagcagactttgtcattccatctcagggggagaacgtt
ttcttcgtggtcaccaacctgatcgtgactcctaaccagcggcagggcatctgcgctgag
cgtgaaggcatccctgatggcgagtgttctgaggacgatgactgtcacgctggggagtct
gttgtagctgggcacggactgaaaactggccgctgtctccgggtggggaactctacccgg
ggaacctgtgagatctttgcttggtgcccagtggagacaaagtccatgccaacggatccc
cttctaaaggatgccgaaagcttcaccatttccataaagaacttcattcgcttccccaag
ttcaacttctccaaagccaatgtactagaaacagacaacaaacatttcctgaaaacctgt
cacttcagctccacaaatctctactgtcccatcttccgactggggtctattgtccgctgg
gcaggggcagacttccaggacatagccctgaagggtggtgtgataggaatctatattgaa
tgggactgtgaccttgataaagctgcctctaaatgcaacccacactactacttcaaccgc
ctggacaacaaacacacacactccatctcctctgggtacaacttcaggttcgccaggtat
taccgtgaccctaatggggtagagttccgtgacctgatgaaagcctacggcatccgcttt
gatgtgatagttaatggcaaggcaggaaaattcagcatcatccccacagtcatcaacatt
ggttctgggctggcgctcatgggtgctggggctttcttctgcgacctggtacttatctac
ctcatcaggaagagtgagttttaccgagacaagaagtttgagaaagtgaggggtcagaag
gaggatgccaatgttgaggttgaggccaacgagatggagcaggagcggcctgaggacgaa
ccactggagagggttcgtcaggatgagcagtcccaagaactggcccagagtggcaggaag
cagaatagcaactgccaggtgcttttggagcctgccaggtttggcctccgggagaatgcc
attgtgaacgtgaagcagtcacagatcttgcatccagtgaagacgtag
>From here it seems like you're stuck 'screen scraping', e.g.,
> ids <- sub("^ENTRY[[:space:]]+([[:digit:]]+).*", "\\1", records)
> ids
[1] "113995" "114098" "114099" "114115" "114207" "114493" "114633" "116601"
[9] "140447" "140448" "140671" "140693" "170546" "170897" "170926" "171140"
[17] "171378" "24173" "24176" "24180" "24215" "24239" "24242" "24244"
[25] "24245" "24246" "24260" "24316" "24326" "24329" "24337" "24408"
[33] "24409" "24411" "24412" "24414" "24418" "24448" "24598" "24599"
[41] "24600" "24611" "24629" "24654" "24655" "24674" "24675" "24680"
[49] "24681" "24807" "24808" "24816" "24889" "24896" "24925" "24929"
[57] "24938" "25007" "25023" "25031" "25041" "25050" "25107" "25176"
[65] "25187" "25229" "25245" "25262" "25267" "252859" "25302" "25324"
[73] "25342" "25369" "25391" "25400" "25439" "25461" "25477" "25505"
[81] "25570" "25636" "25637" "25645" "25652" "25668" "25679" "25689"
[89] "25706" "25738" "257648" "287745" "288057" "290561" "291926" "29241"
[97] "29316" "29322" "29337" "293508"
Martin
Elliot Kleiman <kleiman at rohan.sdsu.edu> writes:
> Hi BioC List from {sunny}San Diego, CA!
>
> [Question]:
> * How do you map KEGG gene IDs to textual gene names, gene descriptions
> via BioC?
>
> For example, I am interested in knowing which genes are
> involved in the calcium signaling pathway in rattus norvegicus,
> so I did:
>
> > library(KEGG)
> > # map pathway id to pathway name
> > KEGGPATHID2NAME$"04020"
> [1] "Calcium signaling pathway"
>
> > library(KEGGSOAP)
> > # get all genes in pathway rno04020
> > csp.genes.rno <- get.genes.by.pathway("path:rno04020")
> > # how many genes are involved?
> > length(csp.genes.rno)
> [1] 165
> > # print a few of the results out
> > csp.genes.rno[1:3]
> [1] "rno:113995" "rno:114098" "rno:114099"
>
> The problem is, I don't know what "rno:113995" refers to?
> [not without visiting the KEGG website]
> Instead, I would like to obtain a mapping for each of the retrieved KEGG
> gene IDs into textual gene names, gene descriptions, etc.
>
> How do you do that exactly?
>
> Thank you,
>
> Elliot Kleiman
>
> > # print SessionInfo
> > sessionInfo()
> R version 2.6.1 (2007-11-26)
> i686-pc-linux-gnu
>
> locale:
> LC_CTYPE=en_US;LC_NUMERIC=C;LC_TIME=en_US;LC_COLLATE=C;LC_MONETARY=en_US;LC_MESSAGES=en_US;LC_PAPER=en_US;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US;LC_IDENTIFICATION=C
>
> attached base packages:
> [1] stats graphics grDevices utils datasets methods base
>
> other attached packages:
> [1] KEGG_2.0.1 KEGGSOAP_1.12.0 SSOAP_0.4-6 RCurl_0.8-3
> [5] XML_1.93-2
>
> loaded via a namespace (and not attached):
> [1] rcompgen_0.1-17 tools_2.6.1
>
> --
> __________________________
> MS graduate student
> Program in Computational Science
> San Diego State University
> http://www.csrc.sdsu.edu/
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor
--
Martin Morgan
Computational Biology / Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N.
PO Box 19024 Seattle, WA 98109
Location: Arnold Building M2 B169
Phone: (206) 667-2793
More information about the Bioconductor
mailing list