提供了参考序列,需要根据起始位置和终止位置提取参考序列上固定的碱基序列,碱基位置及参考序列如下表
参考基因组 | 起始位置 | 终止位置 |
---|---|---|
NC_002645.1 | 293 | 12550 |
NC_006577.2 | 206 | 21753 |
NC_006213.1 | 210 | 21496 |
NC_005831.2 | 287 | 20475 |
NC_004718.3 | 265 | 21485 |
NC_019843.3 | 279 | 21514 |
NC_045512.2 | 266 | 21555 |
参考序列文件如下:
参考基因组 | 参考序列 |
---|---|
NC_002645.1 | ATCG… |
NC_006577.2 | ATCG… |
NC_004718.3 | ATCG… |
…
提取脚本如下:
use strict;
use warnings;
my $in=shift;
open IN,"<$in" or die "pleaes give a file.\n";
print "参考基因组\t序列\n";
while(<IN>)
{
chomp;
my @a=split("\t",$_);
open IN2,"<$a[0]";
while(<IN2>)
{
chomp;
my $length=$a[2]-$a[1]+1;
my $seq=substr($_,$a[1],$length);
print "$a[0]\t$seq\n";
}
close IN2;
}
close IN;