Bio::Tree::Compatible

Bio::Tree::Compatible is a Perl module for testing compatibility of phylogenetic trees with nested taxa.
Download

Bio::Tree::Compatible Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • bioperl team
  • Publisher web site:
  • http://search.cpan.org/~sendu/bioperl-1.5.2_102/Bio/DB/SeqFeature/Store/DBI/mysql.pm

Bio::Tree::Compatible Tags


Bio::Tree::Compatible Description

Bio::Tree::Compatible is a Perl module for testing compatibility of phylogenetic trees with nested taxa. Bio::Tree::Compatible is a Perl module for testing compatibility of phylogenetic trees with nested taxa.SYNOPSIS use Bio::Tree::Compatible; use Bio::TreeIO; my $input = new Bio::TreeIO('-format' => 'newick', '-file' => 'input.tre'); my $t1 = $input->next_tree; my $t2 = $input->next_tree; my ($incompat, $ilabels, $inodes) = $t1->is_compatible($t2); if ($incompat) { my %cluster1 = %{ $t1->cluster_representation }; my %cluster2 = %{ $t2->cluster_representation }; print "incompatible treesn"; if (scalar(@$ilabels)) { foreach my $label (@$ilabels) { my $node1 = $t1->find_node(-id => $label); my $node2 = $t2->find_node(-id => $label); my @c1 = sort @{ $cluster1{$node1} }; my @c2 = sort @{ $cluster2{$node2} }; print "label $label"; print " cluster"; map { print " ",$_ } @c1; print " cluster"; map { print " ",$_ } @c2; print "n"; } } if (scalar(@$inodes)) { while (@$inodes) { my $node1 = shift @$inodes; my $node2 = shift @$inodes; my @c1 = sort @{ $cluster1{$node1} }; my @c2 = sort @{ $cluster2{$node2} }; print "cluster"; map { print " ",$_ } @c1; print " properly intersects cluster"; map { print " ",$_ } @c2; print "n"; } } } else { print "compatible treesn"; }Bio::Tree::Compatible is a Perl tool for testing compatibility of phylogenetic trees with nested taxa represented as Bio::Tree::Tree objects. It is based on a recent characterization of ancestral compatibility of semi-labeled trees in terms of their cluster representations.A semi-labeled tree is a phylogenetic tree with some of its internal nodes labeled, and it can represent a classification tree as well as a phylogenetic tree with nested taxa, with labeled internal nodes corresponding to taxa at a higher level of aggregation or nesting than that of their descendents.Two semi-labeled trees are compatible if their topological restrictions to the common labels are such that for each node label, the smallest clusters containing it in each of the trees coincide and, furthermore, no cluster in one of the trees properly intersects a cluster of the other tree.Future extensions of Bio::Tree::Compatible include a Bio::Tree::Supertree module for combining compatible phylogenetic trees with nested taxa into a common supertree. Requirements: · Perl


Bio::Tree::Compatible Related Software