Thanks. In that case do you know what is the data for biomart's ID converter web interface is coming from?
I have a bunch of swiss prot IDs that I want to convert to hgnc symbols. To do that I am using biomart and for most genes, it works. But for a small minority, it cannot find a corresponding symbol for a given ID even though web interface of biomart successfully handles the conversion.
I added an example for a single gene below.
humanMart = useMart("ensembl", dataset="hsapiens_gene_ensembl")
humanTrans = getBM(attributes = c('uniprot_swissprot','hgnc_symbol','ensembl_gene_id'),
# just take the human ones. just in case...
filters = 'uniprot_swissprot',
values = 'Q9Y2R4',
mart = humanMart)
humanTrans[humanTrans$uniprot_swissprot %in% 'Q9Y2R4',]
uniprot_swissprot hgnc_symbol ensembl_gene_id
15191 Q9Y2R4 ENSG00000277594
2 answers
R/biomaRt connects to the exact same data source as the Ensembl web interface and should yield equivalent results if used correctly.
The example UniProt accession that you give does not map to a HGNC symbol using the web interface (may need to click "Results" to see this result).
From Ensembl.
You small minority should be the difference between these results
- http://www.uniprot.org/uniprot/?query=organism:%22homo%20sapiens%22&fil=reviewed%3Ayes&sort=score = 20,196
- http://www.uniprot.org/uniprot/?query=organism%3A%22homo+sapiens%22+AND+reviewed%3Ayes+AND+database%3A%28type%3Ahgnc%29&sort=score = 19,817
but it you add in the Ensembl mappings (from the UniProt side) the intersect drops some more
There are a number of reasons for the individual mismatches
Log in to answer this question.