comparison sum_fastqc.pl @ 7:53bfb3b2c026 draft

Uploaded
author estrain
date Thu, 18 Oct 2018 22:04:04 -0400
parents 7df018757d26
children 5a9a44e23dad
comparison
equal deleted inserted replaced
6:e386e916efa1 7:53bfb3b2c026
14 my($inname)=shift(@ARGV); 14 my($inname)=shift(@ARGV);
15 my($qscore)=shift(@ARGV); 15 my($qscore)=shift(@ARGV);
16 $qscore=~s/\s+//g; 16 $qscore=~s/\s+//g;
17 my(@qlist)=split(/\,/,$qscore); 17 my(@qlist)=split(/\,/,$qscore);
18 18
19 print "Input\tFile\tFastQC\tPass-Fail\tReads\tPoor_Reads\tGC\%\tMaxN\%\tMeanLen\tMeanQ"; 19 print "Input\tFile\tFastQC\tPass-Fail\tReads\tPoor_Reads\tGC\%\tMax_N\%\tAvg_Len\tMean_Q";
20 foreach(@qlist) { 20 foreach(@qlist) {
21 print "\tQ".$_; 21 print "\tQ".$_."\%";
22 } 22 }
23 print "\n"; 23 print "\n";
24 24
25 foreach (@ARGV) { 25 foreach (@ARGV) {
26 print_stats($_); 26 print_stats($_);
85 } 85 }
86 $qmean = sprintf("%.2f", 100 * $sum / $nreads); 86 $qmean = sprintf("%.2f", 100 * $sum / $nreads);
87 return $qmean; 87 return $qmean;
88 } 88 }
89 89
90 # Calculate mean read Q score
90 sub readmean { 91 sub readmean {
91 $nreads=shift(@_); 92 $nreads=shift(@_);
92 @qarray=@{$_[0]}; 93 @qarray=@{$_[0]};
93 my($sum) = 0; 94 my($sum) = 0;
94 95
99 100
100 $readq = sprintf("%.2f", $sum / $nreads); 101 $readq = sprintf("%.2f", $sum / $nreads);
101 return $readq; 102 return $readq;
102 } 103 }
103 104
105 # Find position with hights fraction of Ns
104 sub maxn { 106 sub maxn {
105 @narray=@{$_[0]}; 107 @narray=@{$_[0]};
106 my($max_nval)=0; 108 my($max_nval)=0;
107 109
108 foreach $item (@narray) { 110 foreach $item (@narray) {
109 my($plist,$nval)=split(/\t/,$item); 111 my($plist,$nval)=split(/\t/,$item);
110 if($nval>$max_nval) { 112 if($nval>$max_nval) {
111 $max_nval=$nval; 113 $max_nval=$nval;
112 } 114 }
113 } 115 }
114 $max_nval = sprintf("%.2f", 100*$max_nval); 116 $max_nval = sprintf("%.4f", $max_nval);
115 return $max_nval; 117 return $max_nval;
116 } 118 }
117 119
120 # Calculate mean read length
118 sub meanlen { 121 sub meanlen {
119 $nreads=shift(@_); 122 $nreads=shift(@_);
120 @larray=@{$_[0]}; 123 @larray=@{$_[0]};
121 my($sum) = 0; 124 my($sum) = 0;
122 125