<p>As others have mentioned in their answer, bioMart is usually the best place to go for this infomation because it draws its data directly from the Ensembl database. </p>

<p>However, you will find you do not get a full translation of Ensembl IDs to Entrez IDs even there. The reason for this is there simply does not exist a simple 1-to-1 mapping of Entrez IDs to Ensembl IDs: they are not just different names for the same thing, but are actually different things. At some point someone (or more likely some algo) has decided that the structure Ensembl ID A is referring to is similar enough to the structure that Enztrez ID B is referring to to link the two together, but such a linking is not always possible.   </p>

<p>In the example you gave, the Ensembl database does not list ENSG00000267809 as being equivalent to 4730, neither does the Entrez database list the opposite, even though both genes have the same name. Because of this, it is very unlikely that any service you use to convert the IDs will pick up this match. </p>

<p>In this particular case, the reason for this is probably that the gene is a processed pseduo-gene and is not annotated in Refseq/NCBI as producing any transcripts. </p>

CC BY-SA 3.0
2017-09-06T12:14:53.817Z
Thank you once again Ian. Very clear. Therefore, If I understand well, the problem I've reported in the question is not real. I mean, mygene is doing a good job keeping those two concepts as separate items.
floatingpurr
CC BY-SA 3.0
2017-09-06T11:58:22.727Z
2017-09-06T11:58:22.727Z
Ian Sudbery
<p>I need to convert a lot of Ensembl Ids to the relative counterpart in Entrez (e.g., <code>ENSG00000157764</code> > <code>673</code>).</p>

<p>I found <a href="http://mygene.info" rel="nofollow noreferrer">mygene.info</a> and it seems what I needed. Let's see the query about <a href="http://mygene.info/v3/gene/ENSG00000157764" rel="nofollow noreferrer"><code>ENSG00000157764</code></a> in action. We can easily find the key-value <code>"entrezgene": 673</code></p>

<p>Unfortunately, the mapping seems not complete in some cases or, maybe, I'm missing something...</p>

<p><strong>Example:</strong></p>

<ul>
<li>Gene: <code>NDUFV2P1</code> <em>(NADH:ubiquinone oxidoreductase core subunit V2
pseudogene 1)</em>    </li>
<li>Expected Mapping
<a href="http://www.ensembl.org/Homo_sapiens/Gene/Summary?g=ENSG00000267809;r=19:53223973-53224879;t=ENST00000596415" rel="nofollow noreferrer"><code>ENSG00000267809</code></a> > <a href="https://www.ncbi.nlm.nih.gov/gene?cmd=retrieve&amp;dopt=default&amp;list_uids=4730" rel="nofollow noreferrer"><code>4730</code></a></li>
</ul>

<p>If I query <em>mygene</em> for <code>ENSG00000267809</code>, I get <a href="http://mygene.info/v3/gene/ENSG00000267809" rel="nofollow noreferrer">this result</a>, but this time no data about the entrez id.</p>

<p>What it sounds pretty odd is that if I query another <em>mygene</em>'s endpoint for <a href="http://mygene.info/v3/query?q=NDUFV2P1" rel="nofollow noreferrer"><code>NDUFV2P1</code></a>, 2 identical records are returned, respectively with Ensembl and Entrez Ids.</p>

<p>Is there a way to leverage such a service to get clean data? Otherwise, is there another robust conversion mapping strategy out there?</p>

CC BY-SA 3.0
2017-09-05T16:41:19.170Z
"I found mygene.info and it seems what I needed" : you should try biomart http://www.ensembl.org/biomart/martview/ .
Pierre
CC BY-SA 3.0
2017-09-05T17:50:00.730Z
Cannot mygene be queried for my use case? Biomart seems very user unfriendly from the API point of view
floatingpurr
CC BY-SA 3.0
2017-09-05T18:19:57.367Z
mygene is a no-name site of uncertain quality. Biomart is a definitive source for reference information. A mild incovenvience in API shouldn't be a deciding factor (especially when you can just download a small text file with everything).
Devon Ryan
CC BY-SA 3.0
2017-09-06T09:17:46.200Z
ok @DevonRyan thanks for your suggestion. I'll try to find out the text file with the mapping that I need.
floatingpurr
<gene><public-databases><conversion>
Missing data mappings in mygene.info while trying to convert Genes Ensembl Ids to Entrez Ids
# Missing data mappings in mygene.info while trying to convert Genes Ensembl Ids to Entrez Ids

(Asked by: username_0 on 2017-09-05)

I need to convert a lot of Ensembl Ids to the relative counterpart in Entrez (e.g., `ENSG00000157764` > `673`).

I found [mygene.info](http://mygene.info) and it seems what I needed. Let's see the query about [`ENSG00000157764`](http://mygene.info/v3/gene/ENSG00000157764) in action. We can easily find the key-value `"entrezgene": 673`

Unfortunately, the mapping seems not complete in some cases or, maybe, I'm missing something...

**Example:**

* Gene: `NDUFV2P1` *(NADH:ubiquinone oxidoreductase core subunit V2
  pseudogene 1)*
* Expected Mapping
  [`ENSG00000267809`](http://www.ensembl.org/Homo_sapiens/Gene/Summary?g=ENSG00000267809;r=19:53223973-53224879;t=ENST00000596415) > [`4730`](https://www.ncbi.nlm.nih.gov/gene?cmd=retrieve&dopt=default&list_uids=4730)

If I query *mygene* for `ENSG00000267809`, I get [this result](http://mygene.info/v3/gene/ENSG00000267809), but this time no data about the entrez id.

What it sounds pretty odd is that if I query another *mygene*'s endpoint for [`NDUFV2P1`](http://mygene.info/v3/query?q=NDUFV2P1), 2 identical records are returned, respectively with Ensembl and Entrez Ids.

Is there a way to leverage such a service to get clean data? Otherwise, is there another robust conversion mapping strategy out there?

**Tags:** gene, public-databases, conversion
> **Comments:**
> **username_1**: "I found mygene.info and it seems what I needed" : you should try biomart http://www.ensembl.org/biomart/martview/ .  
> **username_0**: Cannot mygene be queried for my use case? Biomart seems very user unfriendly from the API point of view  
> **username_2**: mygene is a no-name site of uncertain quality. Biomart is a definitive source for reference information. A mild incovenvience in API shouldn't be a deciding factor (especially when you can just download a small text file with everything).  
> **username_0**: ok @DevonRyan thanks for your suggestion. I'll try to find out the text file with the mapping that I need.  

---

## 1 answers

### Answer by username_3 on 2017-09-06. Score: 8 | Accepted answer

As others have mentioned in their answer, bioMart is usually the best place to go for this infomation because it draws its data directly from the Ensembl database.

However, you will find you do not get a full translation of Ensembl IDs to Entrez IDs even there. The reason for this is there simply does not exist a simple 1-to-1 mapping of Entrez IDs to Ensembl IDs: they are not just different names for the same thing, but are actually different things. At some point someone (or more likely some algo) has decided that the structure Ensembl ID A is referring to is similar enough to the structure that Enztrez ID B is referring to to link the two together, but such a linking is not always possible.

In the example you gave, the Ensembl database does not list ENSG00000267809 as being equivalent to 4730, neither does the Entrez database list the opposite, even though both genes have the same name. Because of this, it is very unlikely that any service you use to convert the IDs will pick up this match.

In this particular case, the reason for this is probably that the gene is a processed pseduo-gene and is not annotated in Refseq/NCBI as producing any transcripts.

> **Comments:**
> **username_0**: Thank you once again Ian. Very clear. Therefore, If I understand well, the problem I've reported in the question is not real. I mean, mygene is doing a good job keeping those two concepts as separate items.  

---

