This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Missing gene symbols in biomart

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
r biomart

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).

Thanks. In that case do you know what is the data for biomart's ID converter web interface is coming from?

You small minority should be the difference between these results

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.