#!/usr/bin/perl
use strict;
use warnings;
my $gc;
my $gc_ratio = 0;
my $id ="";
my %hash;
local $/ = "\n>";
open IN,"$ARGV[0]" or die "Can't open fasta file!";
while (<IN>) {
s/>//g;
my($id,$seq) = split /\n/,$_,2;
my $len = length $seq;
$seq =~s/\n//g;
my $gc = ($seq=~tr/G/G/ + $seq=~tr/C/C/);
my $gc_ratio = $gc/$len;
$hash{$id} = $gc_ratio;
}
close IN;
foreach my $id (sort keys %hash) {
print "$id\t$hash{$id}\n";
}
perl代码实现fasta序列GC含量从高到低排序
最新推荐文章于 2022-11-27 20:29:36 发布