美文网首页
使用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