Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re: simple but stuck

by stephen (Priest)
on Apr 25, 2002 at 15:27 UTC ( #161995=note: print w/ replies, xml ) Need Help??


in reply to Base sequence length in fasta format file

If I'm reading what you're trying to do correctly, you're trying to read sequences from a FastA format file, count the length of each sequence, and print out the ones that are more than 250 bases long.

If possible, I'd suggest using the bioperl module. That does all of the work of reading fasta format, and so will make your work easier. If you can't install modules yourself, perhaps you can get your system administrator to install it for you.

Here's an example of what I think you're trying to do, using the BioPerl modules.

#! /usr/local/bin/perl -w ### NOT TESTED CODE-- I'm not a bio guy, and don't have BioPerl... use strict; use constant IDEAL => 250; use Bio::SeqIO; MAIN: { my $seq_file = Bio::SeqIO->new( -file => $ARGV[0], -format => 'fasta' ) or die "Couldn't open $ARGV[0]: $!; stopped"; while ( my $seq = $seq_file->next_seq() ) { if ( $seq->length() > IDEAL ) { print $seq->seq(), "\n"; } } }

stephen

Update: Removed redundant length() call.


Comment on Re: simple but stuck
Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://161995]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (7)
As of 2014-12-27 23:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (177 votes), past polls