On Wed, Apr 15, 2009 at 9:31 AM, Syed Haider <[email protected] <mailto:[email protected]
>> wrote:
Hi Ruben,
Have you tried executing your query getBM(...) with
'agilent_gf2519f' ? biomaRt throws exception in both case
(agilent_gf2519f and agilent_gf2519F). The real attribute is
'agilent_gf2519f' which works fine from www.biomart.org
<http://www.biomart.org>. I am not sure how the new release is
going
to fix this bug, may be i am missing something here. By trying
it on
R, i feel that its a problem with R API of biomaRt, cc'ing
Steffen
who would know how to debug this.
Its a few years since I was involved with this but I have a
feeling BioConductor hard codes the names of attributes and
filters you can use and if these don't match the names in the
EnsemblMart config then things break. At least that used to be
the case. So it seems either Rhoda has to change the name back in
the next ensembl release or the hard coded name in BioConductor
will need changing. Steffen will know more
Cheers
Damian
Best,
Syed
Ruben wrote:
Hi Syed,
in biomaRt from bioconductor the attribute name is
'agilent_g2519F'. If I execute this code
> ensembl = useMart("ensembl");
> ensembl = useDataset("drerio_gene_ensembl", mart=ensembl);
> atr <- listAttributes(ensembl)
> atr$name[3]
I get this:
> [1] "agilent_g2519F"
It seems that there is a bug, but the new release will fix
it.
Thanks again,
Rubén.
Syed Haider wrote:
Ruben,
the attribute name is: 'agilent_g2519f' not
'agilent_g2519F'
hope this works.
Best,
Syed
Rhoda Kinsella wrote:
Hi Ruben,
I suspect that there is inconsistency between the
spelling of the internal name of the filter and the
attribute. I will look into it and try to fix it for
release 54 (approx end of April). Many apologies
for any
inconvenience caused.
Regards,
Rhoda
On 14 Apr 2009, at 12:27, Ruben wrote:
Hi to all,
I am trying to invoke the following R code,
ensembl = useMart("ensembl");
ensembl = useDataset("drerio_gene_ensembl",
mart=ensembl);
ids <- getBM(attributes =
c("ensembl_gene_id","agilent_g2519F"), filters =
"with_agilent_g2519f", values
=TRUE,mart=ensembl);
but the result is always the same:
1 Query ERROR: caught BioMart::Exception::Usage:
Attribute agilent_g2519F NOT FOUND
Error en getBM(attributes = c("ensembl_gene_id",
"agilent_g2519F"), filters =
c("with_agilent_g2519f"), :
Number of columns in the query result doesn't
equal
number of attributes in query. This is
probably an
internal error, please report.
However, if I retrieve the list of available
attributes I can see "agilent_g2519F" in the
list.
Can you help me? There is a mistake in my code or
there is something wrong in biomart?
Thanks in advance,
Rubén.
Rhoda Kinsella Ph.D.
Ensembl Bioinformatician,
European Bioinformatics Institute (EMBL-EBI),
Wellcome Trust Genome Campus,
Hinxton
Cambridge CB10 1SD,
UK.