Mercurial > repos > davidvanzessen > argalaxy_tools
annotate report_clonality/r_wrapper.sh @ 57:33412e85e669 draft
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
author | rhpvorderman |
---|---|
date | Wed, 02 Feb 2022 10:50:01 +0000 |
parents | 81b3eb11ed2c |
children | 4c6df851e262 |
rev | line source |
---|---|
53 | 1 #!/bin/bash |
2 | |
3 inputFile=$1 | |
4 outputDir=$3 | |
5 outputFile=$3/index.html #$2 | |
6 clonalType=$4 | |
7 species=$5 | |
8 locus=$6 | |
9 filterproductive=$7 | |
10 clonality_method=$8 | |
11 | |
57
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
12 ALL_OUTPUTS_ZIP="$outputDir/all_outputs.zip" |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
13 |
53 | 14 dir="$(cd "$(dirname "$0")" && pwd)" |
15 useD="false" | |
16 if grep -q "$species.*${locus}D" "$dir/genes.txt" ; then | |
17 echo "species D region in reference db" | |
18 useD="true" | |
19 fi | |
20 echo "$species" | |
21 if [[ "$species" == *"custom"* ]] ; then | |
54
81b3eb11ed2c
"planemo upload commit 6c0195cc4de6a34e2c46d875be4fc2157a21cdf6"
rhpvorderman
parents:
53
diff
changeset
|
22 loci=("${locus//;/ }") |
53 | 23 useD="true" |
24 echo "${loci[@]}" | |
25 if [[ "${#loci[@]}" -eq "2" ]] ; then | |
26 useD="false" | |
27 fi | |
28 fi | |
29 mkdir $3 | |
30 cp $dir/genes.txt $outputDir | |
31 Rscript --verbose $dir/RScript.r $inputFile $outputDir $outputDir $clonalType "$species" "$locus" $filterproductive ${clonality_method} 2>&1 | |
32 cp $dir/tabber.js $outputDir | |
33 cp $dir/style.css $outputDir | |
34 cp $dir/script.js $outputDir | |
35 cp $dir/jquery-1.11.0.min.js $outputDir | |
36 cp $dir/pure-min.css $outputDir | |
37 cp $dir/IGH_junctie_analyse.png $outputDir | |
38 samples=`cat $outputDir/samples.txt` | |
39 | |
40 echo "<html><center><h1><a href='index.html'>Click here for the results</a></h1>Tip: Open it in a new tab (middle mouse button or right mouse button -> 'open in new tab' on the link above)<br />" > $2 | |
41 echo "<table border = 1>" >> $2 | |
42 echo "<thead><tr><th>Donor/Replicate</th><th>All</th><th>Productive</th><th>Unique Productive</th><th>Unproductive</th><th>Unique Unproductive</th></tr></thead>" >> $2 | |
43 while IFS=, read sample all productive perc_prod productive_unique perc_prod_un unproductive perc_unprod unproductive_unique perc_unprod_un | |
44 do | |
45 echo "<tr><td>$sample</td>" >> $2 | |
46 echo "<td>$all</td>" >> $2 | |
47 if [[ "$productive" != "0" ]] ; then | |
48 echo "<td>$productive (${perc_prod}%)</td>" >> $2 | |
49 echo "<td>$productive_unique (${perc_prod_un}%)</td>" >> $2 | |
50 echo "<td>$unproductive (${perc_unprod}%)</td>" >> $2 | |
51 echo "<td>$unproductive_unique (${perc_unprod_un}%)</td></tr>" >> $2 | |
52 else | |
53 echo "<td colspan='4' style='background-color: red;'>No productive sequences!</td>" >> $2 | |
54 fi | |
55 done < $outputDir/productive_counting.txt | |
56 echo "</table><br />" >> $2 | |
57 echo "Table showing the number and percentage of (unique) productive and unproductive sequences per donor and per replicate. <br />" >> $2 | |
58 echo "The definition of unique sequences is based on the clonal type definition filter setting chosen. " >> $2 | |
59 echo "</center></html>" >> $2 | |
60 | |
61 echo "<html><head><title>Report on:" >> $outputFile | |
62 | |
63 mkdir $outputDir/circos | |
64 cp -R $dir/circos/* $outputDir/circos/ | |
65 | |
66 USECIRCOS="no" | |
67 path_to_circos=$(which circos) | |
68 if [ -x "$path_to_circos" ]; then | |
69 USECIRCOS="yes" | |
70 fi | |
71 | |
72 echo "Using Circos: $USECIRCOS" | |
73 sed -i "s%DATA_DIR%$outputDir/circos%" $outputDir/circos/circos.conf | |
74 for sample in $samples; do #output the samples to a file and create the circos plots with the R script output | |
75 echo " $sample" >> $outputFile | |
76 | |
77 if [[ "$USECIRCOS" != "yes" ]]; then | |
78 continue | |
79 fi | |
80 | |
81 circos_file="$outputDir/${sample}_VJ_circos.txt" | |
82 sed -i -- 's%/%:%g' $circos_file | |
83 echo -e -n "labels$(cat ${circos_file})" > ${circos_file} | |
84 echo "Circos tools command:" | |
85 echo "cat \"${circos_file}\" | parse-table -configfile $dir/circos/parse-table.conf 2>&1 | make-conf -dir $outputDir/circos/" | |
86 cat "${circos_file}" | parse-table -configfile $dir/circos/parse-table.conf 2>&1 | make-conf -dir $outputDir/circos/ | |
87 | |
88 echo "Circos command:" | |
89 echo "circos -conf $outputDir/circos/circos.conf 2>&1" | |
90 circos -conf $outputDir/circos/circos.conf 2>&1 | |
91 mv $outputDir/circos/circos.png $outputDir/circosVJ_${sample}.png | |
92 mv $outputDir/circos/circos.svg $outputDir/circosVJ_${sample}.svg | |
93 | |
94 | |
95 if [[ "$useD" == "true" ]] ; then | |
96 circos_file="$outputDir/${sample}_VD_circos.txt" | |
97 sed -i -- 's%/%:%g' $circos_file | |
98 echo -e -n "labels$(cat ${circos_file})" > ${circos_file} | |
99 cat "${circos_file}" | parse-table -configfile $dir/circos/parse-table.conf 2>&1 | make-conf -dir $outputDir/circos/ | |
100 sed -i -- 's%/%:%g' $outputDir/circos/cells.txt | |
101 circos -conf $outputDir/circos/circos.conf 2>&1 | |
102 mv $outputDir/circos/circos.png $outputDir/circosVD_${sample}.png | |
103 mv $outputDir/circos/circos.svg $outputDir/circosVD_${sample}.svg | |
104 | |
105 circos_file="$outputDir/${sample}_DJ_circos.txt" | |
106 sed -i -- 's%/%:%g' $circos_file | |
107 echo -e -n "labels$(cat ${circos_file})" > ${circos_file} | |
108 cat "${circos_file}" | parse-table -configfile $dir/circos/parse-table.conf 2>&1 | make-conf -dir $outputDir/circos/ | |
109 sed -i -- 's%/%:%g' $outputDir/circos/cells.txt | |
110 circos -conf $outputDir/circos/circos.conf 2>&1 | |
111 mv $outputDir/circos/circos.png $outputDir/circosDJ_${sample}.png | |
112 mv $outputDir/circos/circos.svg $outputDir/circosDJ_${sample}.svg | |
113 fi | |
114 done | |
115 echo "</title><script type='text/javascript' src='jquery-1.11.0.min.js'></script>" >> $outputFile | |
116 echo "<link rel='stylesheet' type='text/css' href='pure-min.css'>" >> $outputFile | |
117 echo "<script type='text/javascript' src='tabber.js'></script>" >> $outputFile | |
118 echo "<script type='text/javascript' src='script.js'></script>" >> $outputFile | |
119 echo "<link rel='stylesheet' type='text/css' href='style.css'></head>" >> $outputFile | |
120 echo "<div class='tabber'><div class='tabbertab' title='Gene frequencies'>" >> $outputFile | |
121 | |
122 | |
123 echo "<a href='VFPlot.pdf'><img src='VFPlot.png'/></a>" >> $outputFile | |
124 if [[ "$useD" == "true" ]] ; then | |
125 echo "<a href='DFPlot.pdf'><img src='DFPlot.png'/></a>" >> $outputFile | |
126 fi | |
127 echo "<a href='VPlot.pdf'><img src='VPlot.png'/></a>" >> $outputFile | |
128 if [[ "$useD" == "true" ]] ; then | |
129 echo "<a href='DPlot.pdf'><img src='DPlot.png'/></a>" >> $outputFile | |
130 fi | |
131 echo "<a href='JPlot.pdf'><img src='JPlot.png'/></a> <br />" >> $outputFile | |
132 | |
133 echo "<a href='DReadingFrame.pdf'><img src='DReadingFrame.png'/></a>" >> $outputFile | |
134 | |
135 cat $dir/naive_gene_freq.htm >> $outputFile | |
136 | |
137 echo "</div>" >> $outputFile | |
138 | |
139 echo "<div class='tabbertab' title='CDR3 Characteristics'>" >> $outputFile | |
140 echo "<a href='CDR3LengthPlot.pdf'><img src='CDR3LengthPlot.png'/></a><br />" >> $outputFile | |
141 echo "<a href='AAComposition.pdf'><img src='AAComposition.png'/></a>" >> $outputFile | |
142 | |
143 | |
144 echo "<table class='pure-table pure-table-striped'>" >> $outputFile | |
145 echo "<thead><tr><th>Donor</th><th>Median CDR3 Length</th></tr></thead>" >> $outputFile | |
146 while read Sample median | |
147 do | |
148 echo "<tr><td>$Sample</td><td>$median</td></tr>" >> $outputFile | |
149 done < $outputDir/AAMedianBySample.txt | |
150 echo "</table>" >> $outputFile | |
151 | |
152 cat $dir/naive_cdr3_char.htm >> $outputFile | |
153 | |
154 echo "</div>" >> $outputFile | |
155 | |
156 #Heatmaps | |
157 | |
158 count=1 | |
159 echo "<div class='tabbertab' title='Heatmaps'><div class='tabber'>" >> $outputFile | |
160 for sample in $samples; do | |
161 echo "<div class='tabbertab' title='$sample'><table border='1'><tr>" >> $outputFile | |
162 if [[ "$useD" == "true" ]] ; then | |
163 echo "<td><a href='HeatmapVD_$sample.pdf'><img src='HeatmapVD_$sample.png'/></a></td>" >> $outputFile | |
164 fi | |
165 echo "<td><a href='HeatmapVJ_$sample.pdf'><img src='HeatmapVJ_$sample.png'/></a></td>" >> $outputFile | |
166 if [[ "$useD" == "true" ]] ; then | |
167 echo "<td><a href='HeatmapDJ_$sample.pdf'><img src='HeatmapDJ_$sample.png'/></a></td>" >> $outputFile | |
168 fi | |
169 echo "</tr></table></div>" >> $outputFile | |
170 count=$((count+1)) | |
171 done | |
172 | |
173 cat $dir/naive_heatmap.htm >> $outputFile | |
174 | |
175 echo "</div></div>" >> $outputFile | |
176 | |
177 echo "<div class='tabbertab' title='Compare Heatmaps'><table class='pure-table pure-table-striped'><thead><tr><th>ID</th><th>Include</th></tr></thead>" >> $outputFile | |
178 for sample in $samples; do | |
179 echo "<tr><td>$sample</td><td><input type='checkbox' onchange=\"javascript:compareAdd('$sample')\" id='compare_checkbox_$sample'/></td></tr>" >> $outputFile | |
180 done | |
181 echo "</table><div name='comparisonarea'>" >> $outputFile | |
182 echo "<table><tr id='comparison_table_vd'></tr></table>" >> $outputFile | |
183 echo "<table><tr id='comparison_table_vj'></tr></table>" >> $outputFile | |
184 echo "<table><tr id='comparison_table_dj'></tr></table>" >> $outputFile | |
185 | |
186 cat $dir/naive_compare.htm >> $outputFile | |
187 | |
188 echo "</div></div>" >> $outputFile | |
189 | |
190 | |
191 #circos | |
192 | |
193 if [[ "$USECIRCOS" == "yes" ]]; then | |
194 | |
195 echo "<div class='tabbertab' title='Circos'><div class='tabber'>" >> $outputFile | |
196 for sample in $samples; do | |
197 echo "<div class='tabbertab' title='$sample'><table border='1'><center>" >> $outputFile | |
198 if [[ "$useD" == "true" ]] ; then | |
199 echo "<tr><td>V-D</td><td><a href='circosVD_${sample}.svg'><img src='circosVD_${sample}.png' width='700' height='700'/></td></tr>" >> $outputFile | |
200 fi | |
201 echo "<tr><td>V-J</td><td><a href='circosVJ_${sample}.svg'><img src='circosVJ_${sample}.png' width='700' height='700'/></td></tr>" >> $outputFile | |
202 if [[ "$useD" == "true" ]] ; then | |
203 echo "<tr><td>D-J</td><td><a href='circosDJ_${sample}.svg'><img src='circosDJ_${sample}.png' width='700' height='700'/></td></tr>" >> $outputFile | |
204 fi | |
205 echo "<center></table></div>" >> $outputFile | |
206 count=$((count+1)) | |
207 done | |
208 | |
209 cat $dir/naive_circos.htm >> $outputFile | |
210 | |
211 echo "</div></div>" >> $outputFile | |
212 fi | |
213 #echo "<div class='tabbertab' title='Interactive'><svg class='chart'></svg><script src='http://d3js.org/d3.v3.min.js'></script></div>" >> $outputFile | |
214 | |
215 hasReplicateColumn="$(if head -n 1 $inputFile | grep -q 'Replicate'; then echo 'Yes'; else echo 'No'; fi)" | |
216 echo "$hasReplicateColumn" | |
217 #if its a 'new' merged file with replicate info | |
218 if [[ "$hasReplicateColumn" == "Yes" && "${clonality_method}" != "none" ]] ; then | |
219 if [[ "${clonality_method}" == "boyd" ]] ; then | |
220 echo "<div class='tabbertab' title='Clonality'><div class='tabber'>" >> $outputFile | |
221 else | |
222 echo "<div class='tabbertab' title='Shared Clonal Types'><div class='tabber'>" >> $outputFile | |
223 fi | |
224 | |
225 for sample in $samples; do | |
226 echo "${clonality_method}" | |
227 | |
228 echo "<div class='tabbertab' title='$sample'><table class='pure-table pure-table-striped'>" >> $outputFile | |
229 | |
230 if [[ "${clonality_method}" == "boyd" ]] ; then | |
231 clonalityScore="$(cat $outputDir/lymphclon_clonality_${sample}.txt)" | |
232 echo "<tr><td>Clonality Score: </td><td>$clonalityScore</td></tr>" >> $outputFile | |
233 fi | |
234 | |
235 #replicate,reads,squared | |
236 echo "<tr><td>Replicate ID</td><td>Number of Sequences</td></tr>" >> $outputFile | |
237 while read replicate reads squared | |
238 do | |
239 echo "<tr><td>$replicate</td><td>$reads</td></tr>" >> $outputFile | |
240 done < $outputDir/ReplicateReads_$sample.txt | |
241 | |
242 #sum of reads and reads squared | |
243 while read readsSum squaredSum | |
244 do | |
245 echo "<tr><td>Sum</td><td>$readsSum</td></tr>" >> $outputFile | |
246 done < $outputDir/ReplicateSumReads_$sample.txt | |
247 | |
248 echo "<tr><td></td><td></td></tr>" >> $outputFile | |
249 | |
250 #overview | |
251 echo "<tr><td>Number of replicates containing the coincidence</td><td>Number of sequences shared between replicates</td></tr>" >> $outputFile | |
252 while read type count weight weightedCount | |
253 do | |
254 if [[ "$type" -eq "1" ]]; then | |
255 echo "<tr><td>$type</td><td>$count</td></tr>" >> $outputFile | |
256 else | |
257 echo "<tr><td><a href='coincidences_${sample}_${type}.txt'>$type</a></td><td>$count</td></tr>" >> $outputFile | |
258 fi | |
259 done < $outputDir/ClonalityOverView_$sample.txt | |
260 echo "</table></div>" >> $outputFile | |
261 done | |
262 | |
263 cat $dir/naive_clonality.htm >> $outputFile | |
264 | |
265 echo "</div></div>" >> $outputFile | |
266 fi | |
267 | |
268 #hasJunctionData="$(if head -n 1 $inputFile | grep -qE '3V.REGION.trimmed.nt.nb'; then echo 'Yes'; else echo 'No'; fi)" | |
269 | |
270 #if [[ "$hasJunctionData" == "Yes" ]] ; then | |
271 if [ -a "$outputDir/junctionAnalysisProd_mean_wD.txt" ] ; then | |
272 echo "<div class='tabbertab' title='Junction Analysis'>" >> $outputFile | |
273 echo "<img src='IGH_junctie_analyse.png' />" >> $outputFile | |
274 | |
275 echo "<center><p style='font-size: 20;'>Unique rearrangements with a V, D and J gene assigned</p></center>" >> $outputFile | |
276 echo "<table class='pure-table pure-table-striped' id='junction_table'> <caption>Productive mean</caption><thead><tr><th>Donor</th><th>Number of sequences</th><th>V.DEL</th><th>P1</th><th>N1</th><th>P2</th><th>DEL.D</th><th>D.DEL</th><th>P3</th><th>N2</th><th>P4</th><th>DEL.J</th><th>Total.Del</th><th>Total.N</th><th>Total.P</th><th>CDR3.Length</th><thead></tr><tbody>" >> $outputFile | |
277 while read Sample unique VDEL P1 N1 P2 DELD DDEL P3 N2 P4 DELJ TotalDel TotalN TotalP median | |
278 do | |
279 echo "<tr><td>$Sample</td><td>$unique</td><td>$VDEL</td><td>$P1</td><td>$N1</td><td>$P2</td><td>$DELD</td><td>$DDEL</td><td>$P3</td><td>$N2</td><td>$P4</td><td>$DELJ</td><td>$TotalDel</td><td>$TotalN</td><td>$TotalP</td><td>$median</td></tr>" >> $outputFile | |
280 done < $outputDir/junctionAnalysisProd_mean_wD.txt | |
281 echo "</tbody></table>" >> $outputFile | |
282 | |
283 echo "<table class='pure-table pure-table-striped' id='junction_table'> <caption>Unproductive mean</caption><thead><tr><th>Donor</th><th>Number of sequences</th><th>V.DEL</th><th>P1</th><th>N1</th><th>P2</th><th>DEL.D</th><th>D.DEL</th><th>P3</th><th>N2</th><th>P4</th><th>DEL.J</th><th>Total.Del</th><th>Total.N</th><th>Total.P</th><th>CDR3.Length</th><thead></tr><tbody>" >> $outputFile | |
284 while read Sample unique VDEL P1 N1 P2 DELD DDEL P3 N2 P4 DELJ TotalDel TotalN TotalP median | |
285 do | |
286 echo "<tr><td>$Sample</td><td>$unique</td><td>$VDEL</td><td>$P1</td><td>$N1</td><td>$P2</td><td>$DELD</td><td>$DDEL</td><td>$P3</td><td>$N2</td><td>$P4</td><td>$DELJ</td><td>$TotalDel</td><td>$TotalN</td><td>$TotalP</td><td>-</td></tr>" >> $outputFile | |
287 done < $outputDir/junctionAnalysisUnProd_mean_wD.txt | |
288 echo "</tbody></table>" >> $outputFile | |
289 | |
290 echo "<table class='pure-table pure-table-striped' id='junction_table'> <caption>Productive median</caption><thead><tr><th>Donor</th><th>Number of sequences</th><th>V.DEL</th><th>P1</th><th>N1</th><th>P2</th><th>DEL.D</th><th>D.DEL</th><th>P3</th><th>N2</th><th>P4</th><th>DEL.J</th><th>Total.Del</th><th>Total.N</th><th>Total.P</th><th>CDR3.Length</th><thead></tr><tbody>" >> $outputFile | |
291 while read Sample unique VDEL P1 N1 P2 DELD DDEL P3 N2 P4 DELJ TotalDel TotalN TotalP median | |
292 do | |
293 echo "<tr><td>$Sample</td><td>$unique</td><td>$VDEL</td><td>$P1</td><td>$N1</td><td>$P2</td><td>$DELD</td><td>$DDEL</td><td>$P3</td><td>$N2</td><td>$P4</td><td>$DELJ</td><td>$TotalDel</td><td>$TotalN</td><td>$TotalP</td><td>$median</td></tr>" >> $outputFile | |
294 done < $outputDir/junctionAnalysisProd_median_wD.txt | |
295 echo "</tbody></table>" >> $outputFile | |
296 | |
297 echo "<table class='pure-table pure-table-striped' id='junction_table'> <caption>Unproductive median</caption><thead><tr><th>Donor</th><th>Number of sequences</th><th>V.DEL</th><th>P1</th><th>N1</th><th>P2</th><th>DEL.D</th><th>D.DEL</th><th>P3</th><th>N2</th><th>P4</th><th>DEL.J</th><th>Total.Del</th><th>Total.N</th><th>Total.P</th><th>CDR3.Length</th><thead></tr><tbody>" >> $outputFile | |
298 while read Sample unique VDEL P1 N1 P2 DELD DDEL P3 N2 P4 DELJ TotalDel TotalN TotalP median | |
299 do | |
300 echo "<tr><td>$Sample</td><td>$unique</td><td>$VDEL</td><td>$P1</td><td>$N1</td><td>$P2</td><td>$DELD</td><td>$DDEL</td><td>$P3</td><td>$N2</td><td>$P4</td><td>$DELJ</td><td>$TotalDel</td><td>$TotalN</td><td>$TotalP</td><td>-</td></tr>" >> $outputFile | |
301 done < $outputDir/junctionAnalysisUnProd_median_wD.txt | |
302 echo "</tbody></table>" >> $outputFile | |
303 | |
304 # again for no-d | |
305 echo "<center><p style='font-size: 20;'>Unique rearrangements with only a V and J gene assigned</p></center>" >> $outputFile | |
306 echo "<table class='pure-table pure-table-striped' id='junction_table'> <caption>Productive mean</caption><thead><tr><th>Donor</th><th>Number of sequences</th><th>V.DEL</th><th>P1</th><th>N</th><th>P2</th><th>DEL.J</th><th>Total.Del</th><th>Total.N</th><th>Total.P</th><th>CDR3.Length</th><thead></tr><tbody>" >> $outputFile | |
307 while read Sample unique VDEL P1 N1 P2 DELJ TotalDel TotalN TotalP median | |
308 do | |
309 echo "<tr><td>$Sample</td><td>$unique</td><td>$VDEL</td><td>$P1</td><td>$N1</td><td>$P2</td><td>$DELJ</td><td>$TotalDel</td><td>$TotalN</td><td>$TotalP</td><td>$median</td></tr>" >> $outputFile | |
310 done < $outputDir/junctionAnalysisProd_mean_nD.txt | |
311 echo "</tbody></table>" >> $outputFile | |
312 | |
313 echo "<table class='pure-table pure-table-striped' id='junction_table'> <caption>Unproductive mean</caption><thead><tr><th>Donor</th><th>Number of sequences</th><th>V.DEL</th><th>P1</th><th>N</th><th>P2</th><th>DEL.J</th><th>Total.Del</th><th>Total.N</th><th>Total.P</th><th>CDR3.Length</th><thead></tr><tbody>" >> $outputFile | |
314 while read Sample unique VDEL P1 N1 P2 DELJ TotalDel TotalN TotalP median | |
315 do | |
316 echo "<tr><td>$Sample</td><td>$unique</td><td>$VDEL</td><td>$P1</td><td>$N1</td><td>$P2</td><td>$DELJ</td><td>$TotalDel</td><td>$TotalN</td><td>$TotalP</td><td>-</td></tr>" >> $outputFile | |
317 done < $outputDir/junctionAnalysisUnProd_mean_nD.txt | |
318 echo "</tbody></table>" >> $outputFile | |
319 | |
320 echo "<table class='pure-table pure-table-striped' id='junction_table'> <caption>Productive median</caption><thead><tr><th>Donor</th><th>Number of sequences</th><th>V.DEL</th><th>P1</th><th>N</th><th>P2</th><th>DEL.J</th><th>Total.Del</th><th>Total.N</th><th>Total.P</th><th>CDR3.Length</th><thead></tr><tbody>" >> $outputFile | |
321 while read Sample unique VDEL P1 N1 P2 DELJ TotalDel TotalN TotalP median | |
322 do | |
323 echo "<tr><td>$Sample</td><td>$unique</td><td>$VDEL</td><td>$P1</td><td>$N1</td><td>$P2</td><td>$DELJ</td><td>$TotalDel</td><td>$TotalN</td><td>$TotalP</td><td>$median</td></tr>" >> $outputFile | |
324 done < $outputDir/junctionAnalysisProd_median_nD.txt | |
325 echo "</tbody></table>" >> $outputFile | |
326 | |
327 echo "<table class='pure-table pure-table-striped' id='junction_table'> <caption>Unproductive median</caption><thead><tr><th>Donor</th><th>Number of sequences</th><th>V.DEL</th><th>P1</th><th>N</th><th>P2</th><th>DEL.J</th><th>Total.Del</th><th>Total.N</th><th>Total.P</th><th>CDR3.Length</th><thead></tr><tbody>" >> $outputFile | |
328 while read Sample unique VDEL P1 N1 P2 DELJ TotalDel TotalN TotalP median | |
329 do | |
330 echo "<tr><td>$Sample</td><td>$unique</td><td>$VDEL</td><td>$P1</td><td>$N1</td><td>$P2</td><td>$DELJ</td><td>$TotalDel</td><td>$TotalN</td><td>$TotalP</td><td>-</td></tr>" >> $outputFile | |
331 done < $outputDir/junctionAnalysisUnProd_median_nD.txt | |
332 echo "</tbody></table>" >> $outputFile | |
333 | |
334 cat $dir/naive_junction.htm >> $outputFile | |
335 | |
336 echo "</div>" >> $outputFile | |
337 fi | |
338 | |
57
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
339 |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
340 # Create zip file with all download files |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
341 # Use 7za as it is packaged in the container already. |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
342 cd "$outputDir" || exit 1 |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
343 |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
344 7za a -tzip "$ALL_OUTPUTS_ZIP" -- \ |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
345 allUnique.txt VFFrequency.txt VFrequency.txt \ |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
346 JFrequency.txt DReadingFrame.txt CDR3LengthPlot.txt \ |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
347 AAComposition.txt clonalityComplete.txt |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
348 |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
349 if [[ "$useD" == "true" ]] ; then |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
350 7za a -tzip "$ALL_OUTPUTS_ZIP" -- \ |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
351 DFFrequency.txt DFrequency.txt |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
352 fi |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
353 for sample in $samples; do |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
354 if [[ "$useD" == "true" ]] ; then |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
355 7za a -tzip "$ALL_OUTPUTS_ZIP" -- \ |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
356 "HeatmapVD_$sample.txt" "HeatmapDJ_$sample.txt" \ |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
357 "${sample}_VD_circos.txt" "${sample}_DJ_circos.txt" |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
358 fi |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
359 7za a -tzip "$ALL_OUTPUTS_ZIP" -- \ |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
360 "HeatmapVJ_$sample.txt" "${sample}_VJ_circos.txt" |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
361 done |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
362 |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
363 cd $dir || exit 1 |
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
364 |
53 | 365 echo "<div class='tabbertab' title='Downloads'>" >> $outputFile |
366 echo "<table class='pure-table pure-table-striped'>" >> $outputFile | |
367 echo "<thead><tr><th>Description</th><th>Link</th></tr></thead>" >> $outputFile | |
57
33412e85e669
"planemo upload commit 2a9ed3adf321f18047c3746735a5e79a4586798d"
rhpvorderman
parents:
54
diff
changeset
|
368 echo "<tr><td>All outputs below in a zip file</td><td><a href='$ALL_OUTPUTS_ZIP'>Download</a></td></tr>" >> $outputFile |
53 | 369 echo "<tr><td>The filtered dataset</td><td><a href='allUnique.txt'>Download</a></td></tr>" >> $outputFile |
370 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>Gene frequencies</td></tr>" >> $outputFile | |
371 | |
372 echo "<tr><td>The dataset used to generate the distribution of V gene families graph</td><td><a href='VFFrequency.txt'>Download</a></td></tr>" >> $outputFile | |
373 if [[ "$useD" == "true" ]] ; then | |
374 echo "<tr><td>The dataset used to generate the distribution of D gene families graph</td><td><a href='DFFrequency.txt'>Download</a></td></tr>" >> $outputFile | |
375 fi | |
376 | |
377 echo "<tr><td>The dataset used to generate the relative frequency of V gene usage graph</td><td><a href='VFrequency.txt'>Download</a></td></tr>" >> $outputFile | |
378 if [[ "$useD" == "true" ]] ; then | |
379 echo "<tr><td>The dataset used to generate the relative frequency of D gene usage graph</td><td><a href='DFrequency.txt'>Download</a></td></tr>" >> $outputFile | |
380 fi | |
381 echo "<tr><td>The dataset used to generate the relative frequency of J gene usage graph</td><td><a href='JFrequency.txt'>Download</a></td></tr>" >> $outputFile | |
382 echo "<tr><td>The dataset used to generate the relative frequency of the D reading frame graph</td><td><a href='DReadingFrame.txt'>Download</a></td></tr>" >> $outputFile | |
383 | |
384 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>CDR3 Characteristics</td></tr>" >> $outputFile | |
385 echo "<tr><td>The dataset used to generate the CDR3 length frequency graph</td><td><a href='CDR3LengthPlot.txt'>Download</a></td></tr>" >> $outputFile | |
386 echo "<tr><td>The dataset used to generate the Amino Acid Composition in the CDR3 graph</td><td><a href='AAComposition.txt'>Download</a></td></tr>" >> $outputFile | |
387 | |
388 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>Heatmaps</td></tr>" >> $outputFile | |
389 for sample in $samples; do | |
390 if [[ "$useD" == "true" ]] ; then | |
391 echo "<tr><td>The data used to generate the VD heatmap for $sample.</td><td><a href='HeatmapVD_$sample.txt'>Download</a></td></tr>" >> $outputFile | |
392 fi | |
393 echo "<tr><td>The data used to generate the VJ heatmap for $sample.</td><td><a href='HeatmapVJ_$sample.txt'>Download</a></td></tr>" >> $outputFile | |
394 if [[ "$useD" == "true" ]] ; then | |
395 echo "<tr><td>The data used to generate the DJ heatmap for $sample.</td><td><a href='HeatmapDJ_$sample.txt'>Download</a></td></tr>" >> $outputFile | |
396 fi | |
397 done | |
398 | |
399 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>Circos</td></tr>" >> $outputFile | |
400 for sample in $samples; do | |
401 if [[ "$useD" == "true" ]] ; then | |
402 echo "<tr><td>The data used to generate the VD Circos plots for $sample.</td><td><a href='${sample}_VD_circos.txt'>Download</a></td></tr>" >> $outputFile | |
403 fi | |
404 echo "<tr><td>The data used to generate the VJ Circos plots for $sample.</td><td><a href='${sample}_VJ_circos.txt'>Download</a></td></tr>" >> $outputFile | |
405 if [[ "$useD" == "true" ]] ; then | |
406 echo "<tr><td>The data used to generate the DJ Circos plots for $sample.</td><td><a href='${sample}_DJ_circos.txt'>Download</a></td></tr>" >> $outputFile | |
407 fi | |
408 done | |
409 | |
410 #echo "<tr><td>A frequency count of V Gene + J Gene + CDR3</td><td><a href='VJCDR3_count.txt'>Download</a></td></tr>" >> $outputFile | |
411 | |
412 echo "<tr><td colspan='2' style='background-color:#E0E0E0;'>Clonality</td></tr>" >> $outputFile | |
413 echo "<tr><td>The dataset used to calculate clonality score (Unique based on clonaltype, $clonalType)</td><td><a href='clonalityComplete.txt'>Download</a></td></tr>" >> $outputFile | |
414 # echo "<tr><td>Sequences that are present in more than one replicate</td><td><a href='clonaltypes_replicates.txt'>Download</a></td></tr>" >> $outputFile | |
415 | |
416 echo "</table>" >> $outputFile | |
417 | |
418 cat $dir/naive_downloads.htm >> $outputFile | |
419 | |
420 echo "</div></html>" >> $outputFile |