Hi everyone
I wrote a script to generate siz frame sequences (+1 +2 +3 -1 -2 -3 frames). However, it only works on frames +1 +2 +3 -1. For example the following is -3 frame sequence generation. Where is wrong? Note after the script i make an output example. Thank you very much!
INPUT file
OUTPUT result
I wrote a script to generate siz frame sequences (+1 +2 +3 -1 -2 -3 frames). However, it only works on frames +1 +2 +3 -1. For example the following is -3 frame sequence generation. Where is wrong? Note after the script i make an output example. Thank you very much!
Code:
#!/bin/perl
use strict;
use warnings;
my $frame = -3; #when changing to -1 output sequences are ok; but -2 or -3 does not work;
open IN, $ARGV[0];
while (<IN>){
chomp;
my $m = length ($_);
if(/^>(\w+)/){
print ">$1"."_"."frame"."$frame"."\n";
}else{
my $comprevseq = reverse $_;
$comprevseq =~ tr/[A,T,C,G]/[T,A,G,C]/;
my $frameseq = substr ($comprevseq, abs($frame)-1, $m-abs($frame)+1);
print "$frameseq\n";
}
}
close IN;
Code:
>seq1 ATGC >seq2 ATGC >seq3 TTTT
Code:
>seq1_frame-3 CAT >seq2_frame-3 CAT >seq3_frame-3 AA
Comment