while (<$IN2>) { chomp $_; next if eof; my @F2 = split( "\t", $_ ); #Split each tab-delimited field my $partner = <$IN2>; my @F3 = split( "\t", $partner ); #Split each tab-delimited field $store{ ( abs( $F2[2] - $F3[2] ) + 1 ) }++; ( $F2[2], $F3[2] ) = ( $F3[2], $F2[2] ) if $F2[2] > $F3[2]; $Tally{ $F2[1] }{ $F2[2] }{ $F3[2] }++; } foreach my $key ( sort { $a <=> $b } keys %store ) { print $OUT4 "$key\t$store{$key}\n"; } foreach my $chr ( sort { $a <=> $b } keys %Tally ) { foreach my $value1 ( sort { $a <=> $b } keys %{ $Tally{$chr} } ) { foreach my $value2 ( sort { $a <=> $b } keys %{ $Tally{$chr}{$value1} } ) { print $OUT5 "$chr\t$value1\t$value2\t$Tally{$chr}{$value1}{$value2}\n"; } } } #### Use of uninitialized value in subtraction (-) at line 117, <$IN2> line 4148567. Use of uninitialized value in numeric gt (>) at line 118, <$IN2> line 4148567. Use of uninitialized value $F2[2] in hash element at line 119, <$IN2> line 4148567. Argument "" isn't numeric in sort at line 127, <$IN2> line 4148567. #### Line 117 - $store{(abs($F2[2]-$F3[2])+1)}++; Line 118 - ($F2[2], $F3[2]) = ($F3[2], $F2[2]) if $F2[2] > $F3[2]; Line 119 - $Tally{$F2[1]}{$F2[2]}{$F3[2]}++; Line 127 - foreach my $value1 (sort {$a <=> $b} keys %{$Tally{$chr}}) { #### w 11 99658 75 75M 0 c 11 99999 75 75M 74 w 2 702424 75 75M 0 c 2 702556 75 75M 74 c 13 82486 75 75M 74 w 13 82171 75 75M 0 c 2 702585 75 75M 74 w 2 702390 75 75M 0 c 18 2529 75 75M 74 w 18 2232 75 75M 0 c 12 264648 75 75M 74 w 12 264366 74 74M 0 c 10 177758 75 75M 74 w 10 177438 74 74M 0 w 7 185488 74 74M 0