In the following loop, I am going to check if ($current_line14 >= 3) then I want to fake around $current_line2 plus/minus 8. Then check if
I did the following and again it is loop within a loop and makes it to print a lot of redundant stuff.$current_line[1] eq $key && $current_line[5] == 1 && $current_line [2] = $position1) {
I appreciate any help or solution.
Pedro
my $from = 0; my $to =0; my @range =(); while(<INPUT2>){ chomp; my @current_line = split /\t/; if (exists $file1{$current_line[1]} ) { my $key = $current_line[1]; foreach my $position1 (@{$file1{$key}}){ if ($current_line[14] >= 3){ $from = $current_line[2]-8; $to = $current_line[2]+8; for ($from .. $to){ push (@range, $_); } } foreach my $pos (@range){ if ($pos = $position1) { if ( $current_line[1] eq $key && $current_line[5] == 1 ) { print join ("\t", $current_line[1],$current_line[2],$current_line[5],$ +current_line[14], "***",$key, $position1), "\n"; $true_positives++; push (@{$file2{$current_line[1]}}, $current_line[5]); } } } } }
In reply to Re^5: Reading two files, cmp certain cols
by sesemin
in thread Reading two files, cmp certain cols
by sesemin
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |