in reply to use of diamond operator for multiple files
Two comments from my side. First, your subroutine does the same thing twice. I would change it such that it reads the filtered contents of a given file into a given array and call it twice. Second, your while loop is essential equivalent to grep, so in summary, I would rewrite your code as:
my @seq1 = load_seqs( "q1.fa" ); my @seq2 = load_seqs( "q2.fa" ); sub load_seqs{ open my $fh, "<", shift or die "cannot open sequence file: $!"; return grep { /^(?!\>).*\n$/ } <$fh>; }
|
|---|