annotate PsiCLASS-1.0.2/FilterSplice.pl @ 0:903fc43d6227 draft default tip

Uploaded
author lsong10
date Fri, 26 Mar 2021 16:52:45 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
1 #!/bin/perl
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
2
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
3 use strict ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
4 use warnings ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
5
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
6 die "usage: a.pl a.raw_splice trusted.plisce > filtered.splice\n" if ( @ARGV == 0 ) ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
7
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
8 my %trustedSplices ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
9
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
10 open FP1, $ARGV[1] ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
11 while ( <FP1> )
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
12 {
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
13 chomp ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
14 my @cols = split /\s+/, $_ ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
15 my $key = $cols[0]." ".$cols[1]." ".$cols[2] ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
16 $trustedSplices{ $key } = $cols[4] ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
17 }
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
18 close FP1 ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
19
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
20 open FP1, $ARGV[0] ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
21 while ( <FP1> )
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
22 {
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
23 chomp ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
24 my @cols = split /\s+/, $_ ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
25 my $key = $cols[0]." ".$cols[1]." ".$cols[2] ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
26 next if ( !defined $trustedSplices{ $key } ) ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
27
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
28 my $trustedStrand = $trustedSplices{ $key } ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
29 if ( $cols[3] <= 0 )
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
30 {
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
31 print $cols[0], " ", $cols[1], " ", $cols[2], " 1 ", $trustedStrand, " 1 0 0 0\n" ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
32 }
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
33 else
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
34 {
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
35 if ( $cols[4] eq $trustedStrand )
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
36 {
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
37 print $_, "\n" ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
38 }
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
39 else
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
40 {
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
41 $cols[4] = $trustedStrand ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
42 print join( " ", @cols ), "\n" ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
43 }
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
44 }
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
45
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
46 }
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
47 close FP1 ;
903fc43d6227 Uploaded
lsong10
parents:
diff changeset
48