[Bioperl-l] problem parsing a newick format
Hilmar Lapp
hlapp at gmx.net
Thu Feb 12 09:58:09 EST 2009
Note that the terminal semi-colon is part of the format spec. I've
been bitten by this a few times in other programs - it's quite common
that programs reading newick will throw an error or ignore the tree if
it's not terminated by semi-colon.
Having said that, along the lines of being strict on what we emit but
liberal in what we accept, I guess it can be loosened up. But what if
there is more than one tree in the file?
-hilmar
On Feb 12, 2009, at 8:03 AM, Mark A. Jensen wrote:
> No problem, Chyrsanthi--
>
> Jason-- may I loosen up the parser a bit on this?
> MAJ
> ----- Original Message -----
> From: Chrysanthi A.
> To: Mark A. Jensen
> Sent: Thursday, February 12, 2009 7:47 AM
> Subject: Re: [Bioperl-l] problem parsing a newick format
>
>
> Yes, that was the problem.. Now its working perfect!!!! Thanks a lot!
>
> Chrysanthi
>
>
> 2009/2/12 Mark A. Jensen <maj at fortinbras.us>
>
> Chrysanthi-
> Do the trees in your test file end with a semicolon? When I do
>
> use Bio::TreeIO;
> $inp = Bio::TreeIO->new(-fh=>\*DATA, -format=>'newick);
> $tre=$inp->next_tree;
> __END__
> (A:1,(B:2,C:3))
>
> $tre is empty, but when
>
> use Bio::TreeIO;
> $inp = Bio::TreeIO->new(-fh=>\*DATA, -format=>'newick);
> $tre=$inp->next_tree;
> __END__
> (A:1,(B:2,C:3));
>
> $tre contains the tree.
>
> If this is the problem, it sounds like a bug to me-
> Mark
> ----- Original Message -----
> From: Chrysanthi A.
> To: Mark A. Jensen
> Cc: BioPerl List
> Sent: Thursday, February 12, 2009 5:42 AM
> Subject: Re: [Bioperl-l] problem parsing a newick format
>
>
> I tried also that, but it does not work.. It does not give me
> any error message.. It
> seems that the code is correct, but It does not print anything..Why???
>
> Thanks,
>
> Chrysanthi.
>
>
>
>
> 2009/2/12 Mark A. Jensen <maj at fortinbras.us>
>
> C- I think you maybe want
>
> my $input = new Bio::TreeIO(-file =>"nexusCytochrome7R.newick",
> -format => "newick");
>
> and not
>
>
> my $input = new Bio::TreeIO(-fh =>"nexusCytochrome7R.newick",
> -format => "newick");
>
>
> ?
>
> Mark
>
> ----- Original Message ----- From: "Chrysanthi A." <chrysain at gmail.com
> >
> To: "BioPerl List" <bioperl-l at lists.open-bio.org>
> Sent: Wednesday, February 11, 2009 9:13 PM
> Subject: [Bioperl-l] problem parsing a newick format
>
>
>
> Is the code below correct?? Why it does not print anything???
> use strict;
>
> use Bio::TreeIO;
>
>
> my $input = new Bio::TreeIO(-fh =>"nexusCytochrome7R.newick",
> -format => "newick");
>
> while(my $tree = $input->next_tree){
> for my $node(grep{!$_->is_Leaf}$tree->get_nodes){
> next if !$node->ancestor;
> print "Node:", $node->id, "length:", $node->branch_length,
> " ";
> for my $child($node->get_Descendents){
> print "child:", $child->id, "", $child->branch_length, " ";
> }
> print "\n";
> }
> }
>
> Any ideas? I want to read a tree and mainly get the
> duplication events.
> Could someone help me?
>
> Thanks a lot,
>
> Chrysanthi
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>
>
>
>
>
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
--
===========================================================
: Hilmar Lapp -:- Durham, NC -:- hlapp at gmx dot net :
===========================================================
More information about the Bioperl-l
mailing list