1

こんばんは、私は fasta ファイル内のシーケンスの数をカウントする bioperl コードを持っていますが、任意の fasta ファイルで 20 より短く、120 から長いシーケンスをカウントするようにコードを変更しようとしています。コードは以下です

use strict;

use Bio::SeqIO;

my $seqfile = 'sequences.fa';

my $in = Bio::SeqIO->new
        (
                -format => 'fasta',
                -file => $seqfile
        ) ;

my $count = 0;

while (my $seq = $in->next_seq)
{
        $count++;
}

print "There are $count sequences\n";
4

1 に答える 1

4

シーケンス オブジェクトの長さ関数を使用して、while ループ内に if ステートメントを作成できます。

my $len = $seq->length();
if($len < 20 || $len > 120){
    $count++;
}
于 2016-05-04T20:38:56.430 に答える