diff scripts/pickSoftClipping.over.pl @ 21:9672fe07a232 draft default tip

planemo upload for repository https://github.com/portiahollyoak/Tools commit 0fea84d05f8976b8360a8b4943ecb01b87e3ade0-dirty
author mvdbeek
date Mon, 05 Dec 2016 09:58:47 -0500
parents 28d1a6f8143f
children
line wrap: on
line diff
--- a/scripts/pickSoftClipping.over.pl	Wed Oct 26 07:24:45 2016 -0400
+++ b/scripts/pickSoftClipping.over.pl	Mon Dec 05 09:58:47 2016 -0500
@@ -38,7 +38,7 @@
     $chr_num =~ s/chr//;
     if (($chrs{$a[2]} == 1) && (! defined $chrs{$chr_num})) {$chr_num=$a[2];}
     system("samtools view -bu $title $chr_num\:$lower\-$upper > temp.bam");
-    system("samtools view -Xf 0x2 temp.bam > temp.sam");
+    system("samtools view -f 0x2 temp.bam > temp.sam");
 
     my $leftseq="";
     my $rightseq="";
@@ -79,7 +79,9 @@
 	chomp;
 	my @f=split/\t/,$_,12;
 	## read number 1 or 2
-	my ($rnum)=$f[1]=~/(\d)$/;
+	#my ($rnum)=$f[1]=~/(\d)$/;
+        my $rnum=1;
+        if (($f[1] & 128) == 128) {$rnum=2;}
 	
 	## XT:A:* 
 	my ($xt)=$f[11]=~/XT:A:(.)/;
@@ -94,7 +96,7 @@
             my $strand="";
 	    my @z=split(/M/, $f[5]);
 
-            if (($f[5]=~/S$/)&&($f[1]=~/r/))
+            if (($f[5]=~/S$/)&&(($f[1] & 16) == 16))
             {
 		my (@cigar_m)=$f[5]=~/(\d+)M/g;
                 my (@cigar_d)=$f[5]=~/(\d+)D/g;
@@ -116,7 +118,7 @@
 		}
 #		print "\n";
             }
-            elsif (($f[1]=~/R/)&&($z[0]=~/S/)) {
+            elsif ((($f[1] & 32) == 32)&&($z[0]=~/S/)) {
 		$coor=$f[3]; $strand="+";
 		my (@clipped)=$z[0]=~/(\d+)S/g;
                 my $cliplen=sum(@clipped);