Hello, new user and new to Perl. Thanks ahead for the help.
I have an array that looks like this (but with way more lines of sequence):
>memar0003 aminotransferase, class I and II (2259..3419)
LRDFVSKRARAIPPSGIRKFFDIAQTMEDVISLGVGEPDFVTPWCVCEAS
IYSIEQGSTAYTSNKGTPRLRAAISRYLDTRFSTHYDPEAEIIVTCGVSE
AADIAIRAVTDPGDEILVAEPCYVSYNPCVSLAGGTPVPVLCRAEDEFRL
I have a second array identical except for one of the letter
positions. In one of these arrays the letter may
be there or may be missing and vice versa for the
other array. (I don't know which may be which.
I have put two arrays into a hash to compare the values and
return first value that differs. My goal is to identify
the position (a line of sequence with the
aberration between the two is good enough) in the sequence that differs.
This is what I tried:
$first_data = "first.txt";
open(DAT,$first_data) || die("Could not open file!");
@seq1 = <DAT>;
$second_file = "second.txt";
open (RF,$second_file) || die("Could not open file!");
@seq2 = <RF>;
my %hash = (
array1=>[@seq1],
array2=>[@seq2]
);
foreach my $value (%hash) {
if($seq1 =~ $seq2){next;}
else {print $value;
exit;}
}
I feel like I'm close but missing something?