[ensembl-dev] Variant external references: MIM_MORBID

Guillermo Marco Puche guillermo.marco at sistemasgenomicos.com
Tue Apr 5 10:13:09 BST 2016


Hi Will,

I had already tried that:

for my $key (keys $pf->get_all_attributes) {
     print "$key\t$pf->get_all_attributes{$key}\n";
}

associated_gene 
Bio::EnsEMBL::Variation::PhenotypeFeature=HASH(0x73c0840)->get_all_attributes{associated_gene}
variation_names 
Bio::EnsEMBL::Variation::PhenotypeFeature=HASH(0x73c0840)->get_all_attributes{variation_names}
risk_allele 
Bio::EnsEMBL::Variation::PhenotypeFeature=HASH(0x73c0840)->get_all_attributes{risk_allele}

associated_gene:ISG15    risk_allele:0003 variation_names:rs786201005

I don't get why get_all_atributes() method only returns, 
associated_gene, variation_names and risk_allele. As I wrote on previous 
mail I'm able to retrieve the external_reference ($pf->external_id) that 
returns the MIM ID (gene) related to this phenotype and not the 
Phenotype MIM Number.

Will could you please check if you only get this three attributes for 
this specific variant when using $pf->get_all_attributes? Could this be 
a problem related to API or my API local installation?

Regards,
Guillermo.

On 05/04/16 10:45, Will McLaren wrote:
> Hi again,
>
> You can retrieve the MIM ID via fetching the attributes of the 
> phenotype feature, use get_all_attributes()
>
> http://www.ensembl.org/info/docs/Doxygen/variation-api/classBio_1_1EnsEMBL_1_1Variation_1_1PhenotypeFeature.html#a7dfa8e10e74e9ede4d87257823ce564e
>
> Will
>
> On 5 April 2016 at 08:23, Guillermo Marco Puche 
> <guillermo.marco at sistemasgenomicos.com 
> <mailto:guillermo.marco at sistemasgenomicos.com>> wrote:
>
>     Hi Will,
>
>     Unfortunately I can't use the Phentoype.pm plugin since I can't
>     support VEP annotation in JSON format at this moment.
>     --check_existing and --check_alleles are enabled, for the feature
>     types I'm using Transcript (I don't know if this can be the cause
>     of the problem of not being able to retrieve phenotype ids):
>
>     sub feature_types {
>         return ['Transcript'];
>     }
>
>     However with your previous answer and and old e-mail I've
>     accomplished to retrieve the phenotypes:
>
>         foreach my $known_var(@{$vf->{existing} || []}) {
>             foreach my
>     $pf(@{$pfa->fetch_all_by_object_id($known_var->{variation_name})}){
>                 @phenotype_descriptions = ();
>                 if ($pf->source_name =~ /omim/i){
>                     #do stuff with the omim phentoype
>                     push(@phenotype_descriptions,
>     $pf->phenotype->description)
>                     #trying to retrieve the omim phenotype id however
>     i can't find a way to
>                     print $pf->external_id,"\n";
>                     #however i can get the external reference (OMIM
>     gene id)
>                     print $pf->external_reference,"\n";
>                     }
>                 }
>
>     Only problem left I've got is that I can't retrieve the phenotype
>     id itself (MIM morbid id) in this case it should be 616126
>     <http://www.omim.org/entry/616126>.
>     Phentoype description and external reference are working:
>
>       * The phentoype description: $pf->phenotype->description (ie:
>         IMMUNODEFICIENCY 38 WITH BASAL GANGLIA CALCIFICATION)
>       * The phentoype external reference (OMIM gene id) related to
>         this phenotype: $pf->external_reference (ie: MIM:147571)
>
>     For the ClinVar phentoypes I was able to get the ClinVar id with
>     $pf->external_id however I get always an /undef/ value for OMIM
>     phenotypes.
>
>     The VCF input record I'm using for testing is the following one
>     extracted from latest GRCh38:
>
>       * 1    1014143    rs786201005    C    T    .    .
>         dbSNP_146;TSA=SNV;E_Phenotype_or_Disease;CLIN_pathogenic;AA=C
>
>     Regards,
>     Guillermo.
>
>
>     On 04/04/16 17:43, Will McLaren wrote:
>>     Hi Guillermo,
>>
>>     It may be that what you are trying to do is already encapsulated
>>     in our (new to release 84) Phenotypes plugin:
>>
>>     https://github.com/Ensembl/VEP_plugins/blob/release/84/Phenotypes.pm
>>
>>     It has the benefit of reducing DB lookups to a single download
>>     the first time you run it. It's fully configurable to retrieve
>>     phenotypes associated with whatever feature types (variants,
>>     genes etc) you like, as well as limiting by source. One caveat is
>>     that to get rich data from it you must currently use JSON output.
>>
>>     If you wish to continue looking up by variant in your own plugin,
>>     you should enable co-located variant lookup with --check_existing
>>     (add --check_alleles to match alleles to your input variants),
>>     then you can use fetch_all_by_object_id() [1] using the rsIDs in
>>     $tva->variation_feature->{existing}, something like:
>>
>>     sub run {
>>       my ($self, $tva) = @_;
>>       ### get phenotype feature adaptor $pfa somehow
>>       foreach my $id(map {$_->{variation_name}}
>>     @{$tva->variation_feature->{existing} || []}) {
>>         my $pfs = $pfa->fetch_all_by_object_id($id);
>>
>>         ### do something with the phenotype features returned
>>       }
>>     }
>>
>>     Cheers
>>
>>     Will
>>
>>     [1]
>>     http://www.ensembl.org/info/docs/Doxygen/variation-api/classBio_1_1EnsEMBL_1_1Variation_1_1DBSQL_1_1PhenotypeFeatureAdaptor.html#a93fcd05eafcf9bae4f9b9a5754904e4c
>>
>>     On 4 April 2016 at 16:12, Guillermo Marco Puche
>>     <guillermo.marco at sistemasgenomicos.com
>>     <mailto:guillermo.marco at sistemasgenomicos.com>> wrote:
>>
>>         Hello Will,
>>
>>         Code in example [1] is working perfectly for me since I would
>>         like to get the phenotype features related to the variant and
>>         not to the gene. However I don't how to get $var (
>>         Variation::Variation) from inside VEP plugin.
>>         I'm trying with  $self->{variant} but I'm getting always an
>>         "undef" value.
>>
>>         Regards,
>>         Guillermo.
>>
>>
>>         On 04/04/16 14:50, Will McLaren wrote:
>>>         Hi Guillermo,
>>>
>>>         The data you refer to has been retracted from the Ensembl
>>>         core database while we resolve some issues with external
>>>         reference mapping between Ensembl and MIM.
>>>
>>>         You should be able to access the same annotations via the
>>>         variation API, using phenotype features. [1] shows an
>>>         example fetching via a variation object, but you can also
>>>         query by gene [2].
>>>
>>>         Hope that helps
>>>
>>>         Will McLaren
>>>         Ensembl Variation
>>>
>>>         [1]
>>>         http://www.ensembl.org/info/docs/api/variation/variation_tutorial.html#phenotype
>>>         [2]
>>>         http://www.ensembl.org/info/docs/Doxygen/variation-api/classBio_1_1EnsEMBL_1_1Variation_1_1DBSQL_1_1PhenotypeFeatureAdaptor.html#aee2a195b2f6f19952f562511d3ce1a72
>>>
>>>         On 4 April 2016 at 11:46, Guillermo Marco Puche
>>>         <guillermo.marco at sistemasgenomicos.com
>>>         <mailto:guillermo.marco at sistemasgenomicos.com>> wrote:
>>>
>>>             Dear devs,
>>>
>>>             Up to VEP version 83 I was using the following code in a
>>>             plugin to retrieve gene OMIM related information.
>>>
>>>                 my @db_entries = @{$gene->get_all_DBEntries()};
>>>                 foreach my $db_entry(@db_entries){
>>>                     if ($db_entry->dbname eq "MIM_GENE"){
>>>                         $mim_id = $db_entry->primary_id;
>>>                     }
>>>                     if ($db_entry->dbname eq "MIM_MORBID"){
>>>             push(@mim_morbid_ids, $db_entry->primary_id);
>>>                     }
>>>                 }
>>>
>>>             However since I've updated to VEP 84 I don't get any
>>>             MIM_MORBID db_entry associated to any gene. Has this
>>>             been removed or changed location?
>>>
>>>             Best regards,
>>>             Guillermo.
>>>
>>>
>>>             _______________________________________________
>>>             Dev mailing list Dev at ensembl.org <mailto:Dev at ensembl.org>
>>>             Posting guidelines and subscribe/unsubscribe info:
>>>             http://lists.ensembl.org/mailman/listinfo/dev
>>>             Ensembl Blog: http://www.ensembl.info/
>>>
>>>
>>>
>>>
>>>         _______________________________________________
>>>         Dev mailing listDev at ensembl.org <mailto:Dev at ensembl.org>
>>>         Posting guidelines and subscribe/unsubscribe info:http://lists.ensembl.org/mailman/listinfo/dev
>>>         Ensembl Blog:http://www.ensembl.info/
>>
>>
>>         _______________________________________________
>>         Dev mailing list Dev at ensembl.org <mailto:Dev at ensembl.org>
>>         Posting guidelines and subscribe/unsubscribe info:
>>         http://lists.ensembl.org/mailman/listinfo/dev
>>         Ensembl Blog: http://www.ensembl.info/
>>
>>
>>
>>
>>     _______________________________________________
>>     Dev mailing listDev at ensembl.org <mailto:Dev at ensembl.org>
>>     Posting guidelines and subscribe/unsubscribe info:http://lists.ensembl.org/mailman/listinfo/dev
>>     Ensembl Blog:http://www.ensembl.info/
>
>     _______________________________________________
>     Dev mailing list Dev at ensembl.org <mailto:Dev at ensembl.org>
>     Posting guidelines and subscribe/unsubscribe info:
>     http://lists.ensembl.org/mailman/listinfo/dev
>     Ensembl Blog: http://www.ensembl.info/
>
>
>
>
> _______________________________________________
> Dev mailing list    Dev at ensembl.org
> Posting guidelines and subscribe/unsubscribe info: http://lists.ensembl.org/mailman/listinfo/dev
> Ensembl Blog: http://www.ensembl.info/

	

------------------------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.ensembl.org/pipermail/dev_ensembl.org/attachments/20160405/79c017ab/attachment.html>


More information about the Dev mailing list