[ensembl-dev] GeneTree deprecated tag

Sébastien Moretti sebastien.moretti at unil.ch
Mon Mar 30 10:36:58 BST 2015


Hi

I used to use
    $taxon_level = $tree->get_value_for_tag('taxon_name');
with $tree as GeneTree adaptor.

With Ensembl API 79, it looks get_value_for_tag (or get_tagvalue) method 
is deprecated
And "taxon_name" tag is also deprecated.

It is now recommended to use species_tree_node method but it does not 
work with "taxon_name" tag.
ERR: Can't call method "left_index" on an undefined value


So what is the proper way to get it now?


CODE:
my $reg = 'Bio::EnsEMBL::Registry';
$reg->load_registry_from_db(
             ...
);
my $tree_adaptor       = $reg->get_adaptor('Multi', 'compara', 'GeneTree');
my $ncbi_taxon_adaptor = $reg->get_adaptor('Multi', 'compara', 'NCBITaxon');

my $tree    = $tree_adaptor->fetch_by_root_id(375021); # id example
my $tax_level = $tree->species_tree_node('taxon_name');
my $deepest_node_tax = $ncbi_taxon_adaptor->fetch_node_by_name($tax_level);
my $left_tax         = $deepest_node_tax->left_index;

Regards

-- 
Sébastien Moretti
Staff Scientist
Department of Ecology and Evolution,
Biophore, University of Lausanne,
CH-1015 Lausanne, Switzerland
Tel.: +41 (21) 692 4221/4079
http://selectome.unil.ch/ http://bgee.unil.ch/




More information about the Dev mailing list