1

を使用して、アラインメントされた配列を1つずつfastaファイルにエクスポートしようとしていますBio::SeqIO。その結果、シーケンスは60列ごとに新しい行で分割されます。どうすればそれを回避できますか?
シーケンスを「ワイド」形式でエクスポートしたいのですが、シーケンスに改行がないようにします。

私のコードは大まかに:

use Bio::SeqIO;
my $seqin = Bio::SeqIO->new(-file => "<$fastaFile", '-format' => 'Fasta');
my $outname = fileparse($fastaFile, qr/\.[^\.]*$/) . "_sub.fasta";
my $seqout = Bio::SeqIO->new(-file => ">$outname", '-format' => 'Fasta');

while(my $seq = $seqin->next_seq){
      # do something with $seq
      $seqout->write_seq($seq);
}
4

1 に答える 1

2

Bio :: SeqIO :: fastaは、書き込まれたFASTAレコードのフォーマットwidth方法を指定するメソッドを提供します。

while (my $seq = $seqin->next_seq) {
    $seqout->width($seq->length);
    $seqout->write_seq($seq);
}

またはもちろん、シーケンスに最大サイズがある場合は、1つだけ置くことができます

$seqout->width(5000);

ループの前かそこら。

于 2013-02-26T23:55:28.653 に答える