美文网首页
使用perl语言计算fasta序列长度

使用perl语言计算fasta序列长度

作者: 群体遗传学 | 来源:发表于2020-05-08 17:35 被阅读0次

Fasta序列长度的计算的原理就是将不同染色体长度存入哈希,最后用length去计算哈希元素(字符串)的长度。

  • perl脚本如下:
#!/usr/bin/env perl
use strict;

my($name, %seq );
open IN, $ARGV[0];
die "Need the input fasta." if( ! defined $ARGV[0] );
while(<IN>){
        chomp;
        if( /^>(\S+)/ ){            #匹配染色体的名字
                $name = $1;
        }
        else{
                $seq{$name} .= $_;
        }
}
close IN;

print "[ INFO ] Length Infomation:\n\n";
foreach$name(sort{$a cmp $b} keys %seq ){
        print "Name: ".$name."\tLength: ".length($seq{$name})."\n";
}
print "\n";
  • 将上述代码写入length文件,并chmod a+x给length文件命令,给length文件添加可执行权限,我们就可以直接运行以下命令:
    计算油菜基因组染色体长度

相关文章

网友评论

      本文标题:使用perl语言计算fasta序列长度

      本文链接:https://www.haomeiwen.com/subject/clcqnhtx.html