biomart webservice error when using data from Phytozome
1
0
Entering edit mode
@elopez-cortegano-23698
Last seen 23 months ago

I'm trying to give it a look at the phytozome database in biomart, but just as I want to explore a list of known loci, the program returns an error message related to biomaRt webservice. I have tried changing the Mart from phytozome to ensembl, and seems to be related to that. However, I don't see how that connects to the error given, do you have any hints to helping fix this?

This is my code:

library(biomaRt)
mart <- useMart(biomart = "phytozome_mart", dataset = "phytozome", host = "phytozome.jgi.doe.gov")
getBM(attributes = c("organism_name", "gene_name1"), filters = "gene_name_filter", values = "g400", mart = mart)
getBM(attributes = "organism_name", mart = mart)


Which returns error message:

NULL Error in .processResults(postRes, mart = mart, sep = sep, fullXmlQuery = fullXmlQuery, : The query to the BioMart webservice returned an invalid result. The number of columns in the result table does not equal the number of attributes in the query. Please report this on the support site at http://support.bioconductor.org

However, as mentoned above, I don't get this error if I try a similar approach with other databases, e.g. using Ensembl with pig data:

mart <- useMart(biomart = "ensembl", dataset = "sscrofa_gene_ensembl")
getBM(attributes = c("ensembl_gene_id"), mart = mart) %>% head


Any ideas on how to fix this? Thank you

software error go • 335 views
0
Entering edit mode
2
Entering edit mode
Mike Smith ★ 5.5k
@mike-smith
Last seen 5 hours ago
EMBL Heidelberg / de.NBI

It looks like the solution is to use https in the URL e.g.

mart <- useMart(biomart = "phytozome_mart",
dataset = "phytozome",
host = "https://phytozome.jgi.doe.gov")


There's a more complete answer at https://www.biostars.org/p/444088/#444170