[Bioperl-l] Next-gen modules
Chris Fields
cjfields at illinois.edu
Fri Jul 24 08:19:42 EDT 2009
On Jul 24, 2009, at 4:28 AM, Peter wrote:
> On Thu, Jul 23, 2009 at 11:58 PM, Chris
> Fields<cjfields at illinois.edu> wrote:
>>> i.e. Something like this four line Biopython script would be
>>> perfect:
>>> http://biopython.org/wiki/Reading_from_unix_pipes
>>
>> We use named parameters so it's a little more verbose.
>>
>> use Bio::SeqIO;
>> my $in = Bio::SeqIO->new(-fh => \*STDIN, -format => 'fastq-sanger');
>> my $out = Bio::SeqIO->new(-format => 'fastq-solexa');
>> while (my $seq = $in->next_seq) { $out->write_seq($seq) }
>
> Thanks. So that implicitly uses STDOUT for the output?
Yes.
>> Don't be surprised if there are still bugs lurking about, just let
>> me know
>> and I'll fix 'em.
>
> Have you guys (BioPerl) have also gone for "fastq-sanger" instead of
> just "fastq" for the Sanger Standard version of FASTQ (like EMBOSS)?
> Does BioPerl use just "fastq" to mean anything?
Short answer: yes, and yes.
Slightly longer answer: I've set up SeqIO so it converts "new(-format
=> 'foo-bar')" to new(-format => 'foo, -variant => 'bar'). In the
fastq constructor, if the variant is expected but isn't defined (i.e.
for 'fastq') it defaults to sanger. Makes it a bit easier maintenance-
wise if a new variant pops up.
> If BioPerl and EMBOSS are using "fastq-sanger", I think Biopython will
> have to support that as an alias too:
> http://lists.open-bio.org/pipermail/biopython-dev/2009-July/
> 006416.html
>
> Thanks,
>
> Peter
It's consistent with the 'format-variant' usage, but 'fastq' for us is
backwards-compatible, so we'll likely support both.
chris
More information about the Bioperl-l
mailing list