Mercurial > repos > estrain > sum_fastqc
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 |