Using queryMany() in mygene package: Problem of querying Entrez gene IDs based on UniGene IDs in rat.
1
0
Entering edit mode
chaof • 0
@65b554a4
Last seen 22 months ago
United States

I am trying to get the list of entrez ids based on the unigene ids from rat. I used your queryMany() in the package of mygene.

However, it always gives me the error message of Error in rename(df, c(X_id = "_id")) : Some 'from' names in value not found on 'x': X_id

If my input is a symbol, it works perfectly fine. For example, I have two rat genes Abcc3 and Havcr1

xli <- c('Abcc3', 'Havcr1') queryMany(xli, scopes = "symbol", fields="entrezgene", species="rat") Finished DataFrame with 2 rows and 4 columns query _id X_score entrezgene <character> <character> <numeric> <character> 1 Abcc3 140668 62.3720 140668 2 Havcr1 286934 67.7964 286934

However, if I use unigene ids as input, I got the error.

unigenelist <-c (128323, 165430) unigenelist [1] 128323 165430 queryMany(unigenelist, scopes="unigene", fields="entrezgene", species="rat") Finished Error in rename(df, c(X_id = "_id")) : Some 'from' names in value not found on 'x': X_id

```

mygene queryMany • 881 views
ADD COMMENT
0
Entering edit mode
Guido Hooiveld ★ 3.9k
@guido-hooiveld-2020
Last seen 8 hours ago
Wageningen University, Wageningen, the …

I am not familiar with the package mygene, but please note that unigene has been retired 3 years ago! https://ncbiinsights.ncbi.nlm.nih.gov/2019/07/30/the-unigene-web-pages-are-now-retired/ I don;t know how mygene is working under the hood, but this could be a reason you don't get any results. You could also wonder how up-to-date unigene mappings still are.

Yet, in your case its seem your unigene ids are not unigene ids, or they are not properly formatted. As far as I know, they always started with an abbreviated species name, such as Rn or Hs.

Using your code that I slightly modified:

> xli <- c('Abcc3', 'Havcr1')
> queryMany(xli, scopes = "symbol", fields=c("entrezgene", "unigene"), species="rat")
Finished
DataFrame with 2 rows and 5 columns
        query         _id   X_score  entrezgene     unigene
  <character> <character> <numeric> <character> <character>
1       Abcc3      140668   62.3798      140668    Rn.88248
2      Havcr1      286934   67.9144      286934    Rn.11154
>

You will see unigene ids are still returned.

When using these 2 unigene ids as input:

> unigenelist <- c("Rn.88248", "Rn.11154")
> queryMany(unigenelist, scopes="unigene", fields=c("entrezgene", "symbol"), species="rat")
Finished
DataFrame with 2 rows and 5 columns
        query         _id   X_score  entrezgene      symbol
  <character> <character> <numeric> <character> <character>
1    Rn.88248      140668   14.0418      140668       Abcc3
2    Rn.11154      286934   14.1912      286934      Havcr1

>

... it shows that unigene ids are still being mapped.

My conclusion: you are using as input some identifiers that are not unigene ids. Also, because of the retirement of unigene, I would make use of another id for annotating results.

ADD COMMENT

Login before adding your answer.

Traffic: 447 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6