Perl 如何创建滑动窗口并将滑动窗口的值放入散列?
我需要创建一个大小为15的滑动窗口,遍历一个Fasta文件,并将滑动窗口的所有值存储到一个散列中。当我试图打印时,我得到了错误 全局符号“$sequence”要求在./findAllKmers.1.pl第60行显示包名。Perl 如何创建滑动窗口并将滑动窗口的值放入散列?,perl,sliding-window,Perl,Sliding Window,我需要创建一个大小为15的滑动窗口,遍历一个Fasta文件,并将滑动窗口的所有值存储到一个散列中。当我试图打印时,我得到了错误 全局符号“$sequence”要求在./findAllKmers.1.pl第60行显示包名。 由于编译错误,./findAllKmers.1.pl的执行被中止” !/usr/bin/perl 使用警告; 严格使用; 我的%windowSeqScores=(); my$sequenceRef=loadSequence(“/scratch/Drosophila/dmel-2
由于编译错误,./findAllKmers.1.pl的执行被中止”
!/usr/bin/perl
使用警告;
严格使用;
我的%windowSeqScores=();
my$sequenceRef=loadSequence(“/scratch/Drosophila/dmel-2L-chromose-r5.54.fasta”);
我的$windowSize=23;
我的$stepSize=1;
我的$maxScore=0;
我的$sequence=@;
我的$in_文件='uniqueKmersEndingGG.fasta';
打开(我的$fh,“>”,$in_文件)或死亡“无法打开文件‘filename’$!”!";
为了(
my$WindowsStart=0;
$windowStart/){
我的$序列=$行;
如果(长度($序列)=15){
$counter=$counter+1;
打印美元;
}
}
返回\$sequence;
}
}
打印$sequence;
我尝试编译您的代码。在test.pl第44行的末尾出现错误“缺少右花括号或方括号”,我只是在最后一行之后添加了一个右大括号“}”,并编译了它
您正在for()循环内声明一个函数。这很不寻常。我可以在循环外声明它。您只发布了46行代码…但错误在第60行。对不起,我删除了一堆不必要的代码。错误在最后一行$sequence中。感谢您的帮助。