- 论坛徽章:
- 2
|
小弟现有数据如下:
12
32
45
677
55
333
4456
8887
331
678
235
...
...
文件中均是数字,现在想统计这些数字在0-100,100-200,.....各区间中的个数,之前写过一个小脚本,如下:
#!perl-w
use strict;
open IN,"$ARGV[0]" || die "no....";
open OUT,">$ARGV[0]_tongjiout.fasta";
my @lengthh=();
while(<IN>) {
chomp;
my $line=$_;
if ($line >=0 && $line <100){$lengthh[0]++;}
elsif($line >=100 && $line <200){$lengthh[1]++;}
elsif($line >=200 && $line <300){$lengthh[2]++;}
elsif($line >=300 && $line <400){$lengthh[3]++;}
elsif($line >=400 && $line <500){$lengthh[4]++;}
elsif($line >=500 && $line <600){$lengthh[5]++;}
elsif($line >=600 && $line <700){$lengthh[6]++;}
elsif($line >=700 && $line <800){$lengthh[7]++;}
elsif($line >=800 && $line <900){$lengthh[8]++;}
elsif($line >=900 && $line <1000){$lengthh[9]++;}
elsif($line >=1000 && $line <1100){$lengthh[10]++;}
elsif($line >=1100 && $line <1200){$lengthh[11]++;}
elsif($line >=1200 && $line <1300){$lengthh[12]++;}
elsif($line >=1300 && $line <1400){$lengthh[13]++;}
elsif($line >=1400 && $line <1500){$lengthh[14]++;}
elsif($line >=1500 && $line <1600){$lengthh[15]++;}
elsif($line >=1600 && $line <1700){$lengthh[16]++;}
elsif($line >=1700&& $line <1800){$lengthh[17]++;}
elsif($line >=1800 && $line <1900){$lengthh[18]++;}
elsif($line >=1900 && $line <2000){$lengthh[19]++;}
elsif($line >=2000 && $line <2100){$lengthh[20]++;}
elsif($line >=2100 && $line <2200){$lengthh[21]++;}
elsif($line >=2200 && $line <2300){$lengthh[22]++;}
elsif($line >=2300 && $line <2400){$lengthh[23]++;}
elsif($line >=2400 && $line <2500){$lengthh[24]++;}
elsif($line >=2500 && $line <2600){$lengthh[25]++;}
elsif($line >=2600 && $line <2700){$lengthh[26]++;}
elsif($line >=2700 && $line <2800){$lengthh[27]++;}
elsif($line >=2800 && $line <2900){$lengthh[28]++;}
elsif($line >=2900 && $line <3000){$lengthh[29]++;}
elsif($line >=3000 && $line <3100){$lengthh[30]++;}
elsif($line >=3100 && $line <3200){$lengthh[31]++;}
elsif($line >=3200 && $line <3300){$lengthh[32]++;}
elsif($line >=3300 && $line <3400){$lengthh[33]++;}
elsif($line >=3400 && $line <3500){$lengthh[34]++;}
elsif($line >=3500 && $line <3600){$lengthh[35]++;}
elsif($line >=3600 && $line <3700){$lengthh[36]++;}
elsif($line >=3700 && $line <3800){$lengthh[37]++;}
elsif($line >=3800 && $line <3900){$lengthh[38]++;}
elsif($line >=3900 && $line <4000){$lengthh[39]++;}
elsif($line >=4000 && $line <4100){$lengthh[40]++;}
elsif($line >=4100 && $line <4200){$lengthh[41]++;}
elsif($line >=4200 && $line <4300){$lengthh[42]++;}
elsif($line >=4300 && $line <4400){$lengthh[43]++;}
elsif($line >=4400 && $line <4500){$lengthh[44]++;}
elsif($line >=4500 && $line <4600){$lengthh[45]++;}
elsif($line >=4600 && $line <4700){$lengthh[46]++;}
elsif($line >=4700 && $line <4800){$lengthh[47]++;}
elsif($line >=4800 && $line <4900){$lengthh[48]++;}
elsif($line >=4900 && $line <5000){$lengthh[49]++;}
elsif($line >=5000 && $line <5100){$lengthh[50]++;}
elsif($line >=5100 && $line <5200){$lengthh[51]++;}
elsif($line >=5200 && $line <5300){$lengthh[52]++;}
elsif($line >=5300 && $line <5400){$lengthh[53]++;}
elsif($line >=5400 && $line <5500){$lengthh[54]++;}
elsif($line >=5500 && $line <5600){$lengthh[55]++;}
elsif($line >=5600 && $line <5700){$lengthh[56]++;}
elsif($line >=5700 && $line <5800){$lengthh[57]++;}
elsif($line >=5800 && $line <5900){$lengthh[58]++;}
elsif($line >=5900 && $line <6000){$lengthh[59]++;}
elsif($line >=6000 ){$lengthh[60]++;}
}
foreach(@lengthh){
print OUT "$_\n";
}
小弟自己看着都难受,但又想不出该咋写,半路出家学写程序,还望大神指点迷津~~~~~
小弟万分感谢!!!!!! |
|