[Bioperl-l] problem parsing a newick format

Chris Fields cjfields at illinois.edu
Thu Feb 12 16:15:09 UTC 2009


Then the semicolon is required.  The split is along ";\n".

Committed a fix for this; it was an event handler issue (just needed a  
tail check for any remaining data and return it if the tree is defined).

chris

On Feb 12, 2009, at 8:58 AM, Hilmar Lapp wrote:

> 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 :
> ===========================================================
>
>
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l




More information about the Bioperl-l mailing list