[BioC] error with retrieving dn and ds using biomart

James W. MacDonald jmacdon at uw.edu
Tue Mar 19 18:03:24 CET 2013

Hi David,

On 3/19/13 12:26 PM, David Wang wrote:
> Dear All,
>      I have a list of human genes with EntrezGene IDs. And I want to
> retrieve dN and dS values of them from biomaRt.
> I used the following command.
> library(biomaRt)
> ensembl = useMart("ensembl", dataset = "hsapiens_gene_ensembl")
> inputfile<-"gene_list.txt";
> geneIDs<-read.table(inputfile,header=F);
> dnds <- getBM(attributes = c("entrezgene", "mmusculus_homolog_dn",
> "mmusculus_homolog_ds"), filters = c("entrezgene"), values= geneIDs, mart =
> ensembl)
> There is an error as the following:
> Query ERROR: caught BioMart::Exception::Usage: Attributes from multiple
> attribute pages are not allowed

There are certain attribute pages on the Biomart server, and you cannot 
get data from more than one.

 > x <- listAttributes(mart, what=c("name","description","page"))
 > x[x[,1] %in% 
                     name   description         page
47            entrezgene EntrezGene ID feature_page
577 mmusculus_homolog_dn            dN     homologs
578 mmusculus_homolog_ds            dS     homologs

So the homolog data you want come from the homologs page, but the 
entrezgene data come from the feature_page, hence you cannot get all 
three at one time.



> Could anyone give some suggestions on this? Thanks very much!
> Best all!

More information about the Bioconductor mailing list