Question: Quiery to biomart returned an invalid result
1
gravatar for Seth
3 months ago by
Seth10
Seth10 wrote:

I was told to report this on here:

I've got a list of ensembl IDs that's about 40k long so was trying to use biomaRt.

My first try was

mart <- useMart("ensembl")
mart <- useDataset("mmusculus_gene_ensembl", mart)
attributes <- c("ensembl_transcript_id", "transcript_appris", "ensembl_gene_id", "start_position", "end_position")
filters <- "ensembl_gene_id"
Output <- getBM(attributes = attributes, filters = filters, values=EnsemblIDList, mart=mart)

When I ran it it returns:

Error in getBM(attributes = attributes, filters = filters, values = EnsemblIDList,  : 
The query to the BioMart webservice returned an invalid result: biomaRt expected a character string of length 1. 
Please report this on the support site at http://support.bioconductor.org

However, after seeing https://support.bioconductor.org/p/105641/ I thought that maybe the issue was it was being directed to another server so I changed it to

mart<-useMart(biomart = "ENSEMBL_MART_ENSEMBL", 
              dataset = "mmusculus_gene_ensembl", 
              host = "www.ensembl.org",
              ensemblRedirect = FALSE)
attributes <- c("ensembl_transcript_id", "transcript_appris", "ensembl_gene_id", "start_position", "end_position")
filters <- "ensembl_gene_id"
Output <- getBM(attributes = attributes, filters = filters, values=EnsemblIDList, mart=mart)

Sadly, same issue. It gets a variable length through the process then dies; highest I've seen is 41% but generally less than 10%. Does anyone know what's going wrong?

biomart R • 119 views
ADD COMMENTlink modified 3 months ago by Mike Smith4.0k • written 3 months ago by Seth10

I have been getting the same error using ~60k ensembl gene ids today as well. Using human ids instead of mouse.

ADD REPLYlink written 3 months ago by jaugley0
Answer: Quiery to biomart returned an invalid result
2
gravatar for Mike Smith
3 months ago by
Mike Smith4.0k
EMBL Heidelberg / de.NBI
Mike Smith4.0k wrote:

The ensemblRedirect argument has been deprecated and doesn't do anything anymore. If you're using the latest version of biomaRt there should have been a message printed saying this.

To use one of the mirror sites you can do:

mart <- useEnsembl(biomart = "ensembl", 
                   dataset = "mmusculus_gene_ensembl", 
                   mirror = "useast")

Values for the mirror argument are: useast, uswest, asia.

This problem has been arising a lot recently, and I'm in contact with Ensembl to try and find a sustainable solution.

ADD COMMENTlink written 3 months ago by Mike Smith4.0k

I included a previous version of my code, I have been removing that but it still didn't work. Glad to know it's not just me.

ADD REPLYlink modified 3 months ago • written 3 months ago by Seth10
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 16.09
Traffic: 327 users visited in the last hour