如何使用perl查找a位置和b位置的Mod值
现在我有了数据(txt文件)。如何找到a位置和b位置的Mod值。 例如:如何使用perl查找a位置和b位置的Mod值,perl,bioinformatics,Perl,Bioinformatics,现在我有了数据(txt文件)。如何找到a位置和b位置的Mod值。 例如: my data: posi 13628 16195 GTG GAA BL4_0018 14185 14185 T C 20000 16543 ATG GAC BL4_0019 Hope The result : posi Mod value 16195 GTG GAA BL4_0018 Mod value 14185 T C Mod
my data:
posi
13628 16195 GTG GAA BL4_0018
14185 14185 T C
20000 16543 ATG GAC BL4_0019
Hope The result :
posi
Mod value 16195 GTG GAA BL4_0018
Mod value 14185 T C
Mod value 16543 ATG GAC BL4_0019
Mod value=(present-current)%3+1
我希望结果与所有列一起打印。如果您能给我一些建议,我将不胜感激。怎么样:
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dump qw(dump);
my ($current, $previous, $rest, $prest);
while(<DATA>) {
chomp;
if (/^\s*(\d+)(.*)$/) {
$current = $1;
$rest = $2;
}
if (defined $previous) {
my $mod = ($current - $previous) % 3 + 1;
print "$mod $rest\n";
}
$previous = $current;
}
__DATA__
posi
13628 16195 GTG GAA BL4_0018
14185 14185 T C
20000 16543 ATG GAC BL4_0019
你到底有什么问题?你试过什么了?我想插入txt文件并在colums位置找到mod值。只是位置的值被更改了,但我不知道怎么做。非常感谢。非常好。但我希望结果能以列表形式打印出来,因为这不仅是位置栏,而且还有很多栏。你能告诉我怎么做吗?@潘:我不太明白你需要什么:-(但是你可以只做
打印
而不是按查看结果。@M45:你能再看一次我的问题吗?我又写了一遍。@M45:对不起,M45我写的不是好问题。我确实希望这样做。但是在这个位置上,你能告诉我如何修改值吗?我的意思是和你的第一个答案一样。1.2或3顺便问一下。你能再给我看一次第一个答案的代码吗?非常感谢。@Phan:你可以通过点击N分钟前编辑的链接查看以前版本的答案
3 14185 T C
2 16543 ATG GAC BL4_0019