Hi Rhoda,

Thats exactly my point, what i am unable to understand is that where the 'F' comes from in the first place. Its not present in ensembl. If its a typo during hard-coded procedure while naming the atts in biomaRt, then ensembl should not really be changing anything.



Rhoda Kinsella wrote:
Hi Syed,
If you do listAtributes(ensembl) in biomaRt you will see the 'F' (attribute number 3):

 > listAttributes(ensembl)
name description 1 affy_zebrafish Affy zebrafish 2 agilent_g2518a Agilent g2518a 3 agilent_g2519F Agilent g2519f 4 agilent_probe Agilent Probe
etc...

So the capital F is in the internal name and the lowercase 'f' in the display name which we see on the mart interface. If I do the same query using agilent_g2518a (which has lowercase a in filter and attribute) I can pull out results. I agree it is not ideal to change these internal names, but in this case I think it will be necessary to fix the problem.
Regards,
Rhoda


On 15 Apr 2009, at 10:19, Syed Haider wrote:

Which ever is the case, the name even if with small 'f' still is not the same as with_*. What i see right now is that both att and filt have small 'f'. I wonder where is the capital 'F' is coming from ?

wwe also need to be careful in changing names since other clients also have saved queries which might break.

Syed


Damian Smedley wrote:
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.

Rhoda Kinsella Ph.D.
Ensembl Bioinformatician,
European Bioinformatics Institute (EMBL-EBI),
Wellcome Trust Genome Campus,
Hinxton
Cambridge CB10 1SD,
UK.

Reply via email to