6.2 perl--统计每条scaffold的长度

有一个文件, >**为序列的名字,下面接的是一行是序列。统计每个序列的长度。

文件内容例如:

>A
ACTGACGT
>B
CGFSFTACGAT
>C
AGAGAGAGAAGAGAGAGAGA

统计fasta文件中每条序列的长度

#!/usr/bin/perl
use warnings;
use strict;
my (@arr, $changdu, %hash, $key);
open (FELI, "$ARGV[0]");  #$ARGV[0]指的是脚本运行后跟的第一个参数

while(< IN >){
                 chomp;
                if (/^>/){
                   $key=$_;
}
                $hash{$key}.=$_ unless /^>/;

}

foreach (keys %hash){
                  $changdu=length($hash{$_});
                  print "$_\t$changdu\t$hash{$_}\n";
}
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn

Sam avatar
About Sam
专注生物信息 专注转化医学