2
|
1 <tool id="NmrBucketing" name="NMR_Bucketing" version="1.0.3">
|
|
2
|
|
3 <description> Bucketing and integration of NMR Bruker raw data</description>
|
|
4
|
|
5 <requirements>
|
|
6 <requirement type="package" version="1.1_4">r-batch</requirement>
|
|
7 <requirement type="package" version="1.8.8">r-pracma</requirement>
|
|
8 </requirements>
|
|
9
|
|
10 <stdio>
|
|
11 <exit_code range="1:" level="fatal" />
|
|
12 </stdio>
|
|
13
|
|
14 <command>
|
|
15 Rscript '$__tool_directory__/NmrBucketing_wrapper.R'
|
|
16
|
|
17 #if $inputs.input == "tsv_file":
|
|
18 tsvfile '$inputs.tsv_file'
|
|
19 #elif $inputs.input == "zip_file":
|
|
20 zipfile '$inputs.zip_file'
|
|
21 #end if
|
|
22
|
|
23
|
|
24 ## Bucket width
|
|
25 bucket_width $bucket_width
|
|
26
|
|
27 ## Spectra borders
|
|
28 left_border $left_border
|
|
29 right_border $right_border
|
|
30
|
|
31
|
|
32 ## Spectra representation
|
|
33 graphType $graphType
|
|
34
|
|
35 ## Exclusion zone
|
|
36 zone_exclusion_choices.choice ${zone_exclusion_choices.choice}
|
|
37 #if str($zone_exclusion_choices.choice) == 'yes':
|
|
38 #for $i in $zone_exclusion_choices.conditions:
|
|
39 zone_exclusion_left ${i.zone_exclusion_left}
|
|
40 zone_exclusion_right ${i.zone_exclusion_right}
|
|
41 #end for
|
|
42 #end if
|
|
43
|
|
44 ## Outputs
|
|
45 logOut log.log
|
|
46 dataMatrixOut '$dataMatrixOut'
|
|
47 sampleOut '$sampleOut'
|
|
48 variableOut '$variableOut'
|
|
49 graphOut '$graphOut'; cat log.log
|
|
50 </command>
|
|
51
|
|
52 <inputs>
|
|
53 <conditional name="inputs">
|
|
54 <param name="input" type="select" label="Choose your inputs method" >
|
|
55 <option value="zip_file" selected="true">Zip file from your history containing your Bruker directories</option>
|
|
56 <option value="tsv_file">Tsv file containing preprocessed spectra (from your history)</option>
|
|
57 </param>
|
|
58 <when value="zip_file">
|
|
59 <param name="zip_file" type="data" format="no_unzip.zip" label="Zip file" />
|
|
60 </when>
|
|
61 <when value="tsv_file">
|
|
62 <param name="tsv_file" type="data" format="tabular" label="Tsv file" />
|
|
63 </when>
|
|
64 </conditional>
|
|
65
|
|
66 <param name="bucket_width" label="Bucket width" type="float" value="0.04" help="Default value is 0.04 ppm"/>
|
|
67
|
|
68 <param name="left_border" label="Left Border" type="float" value="10.0" size="10" help="Default value is 10 ppm"/>
|
|
69 <param name="right_border" label="Right Border" type="float" value="0.5" size="10" help="Default value is 0.5 ppm"/>
|
|
70
|
|
71 <conditional name="zone_exclusion_choices">
|
|
72 <param name="choice" type="select" label="Exclusion zone(s)" help="Choose if you want to exclude particular zone(s)" >
|
|
73 <option value="yes" > yes </option>
|
|
74 <option value="no" selected="true"> no </option>
|
|
75 </param>
|
|
76 <when value="yes">
|
|
77 <repeat name="conditions" title="exclusion zones">
|
|
78 <param name="zone_exclusion_left" label="Left exclusion zone border" type="float" value="10.0" />
|
|
79 <param name="zone_exclusion_right" label="Right exclusion zone border" type="float" value="10.0" />
|
|
80 </repeat>
|
|
81 </when>
|
|
82 <when value="no">
|
|
83 </when>
|
|
84 </conditional>
|
|
85
|
|
86 <param name="graphType" label="Spectra representation" type="select" help="Select 'None' for no representation,'Overlay' to overlay all spectra on a unique chart and 'One per individual' to generate an individual chart for each observation">
|
|
87 <option value="None"> none </option>
|
|
88 <option value="Overlay"> Overlay </option>
|
|
89 <option value="One_per_individual"> One_per_individual </option>
|
|
90 </param>
|
|
91
|
|
92 </inputs>
|
|
93
|
|
94 <outputs>
|
|
95 <data format="tabular" name="sampleOut" label="${tool.name}_sampleMetadata" />
|
|
96 <data format="tabular" name="variableOut" label="${tool.name}_variableMetadata" />
|
|
97 <data format="tabular" name="dataMatrixOut" label="${tool.name}_bucketedData" />
|
|
98 <data format="pdf" name="graphOut" label="${tool.name}_spectra" >
|
|
99 <filter> graphType != "None" </filter>
|
|
100 </data>
|
|
101 </outputs>
|
|
102
|
|
103 <tests>
|
|
104 <test>
|
|
105 <param name="inputs|input" value="zip_file" />
|
|
106 <param name="inputs|zip_file" value="MTBLS1.zip" ftype="zip" />
|
|
107 <param name="bucket_width" value="0.01" ftype="zip" />
|
|
108 <param name="left_border" value="9.3" />
|
|
109 <param name="right_border" value="0.8" />
|
|
110 <param name="zone_exclusion_choices|choice" value="yes" />
|
|
111 <param name="zone_exclusion_choices|conditions_0|zone_exclusion_left" value="6.0" />
|
|
112 <param name="zone_exclusion_choices|conditions_0|zone_exclusion_right" value="4.24" />
|
|
113 <param name="zone_exclusion_choices|conditions_1|zone_exclusion_left" value="3.99" />
|
|
114 <param name="zone_exclusion_choices|conditions_1|zone_exclusion_right" value="3.19" />
|
|
115 <param name="graphType" value="Overlay" />
|
|
116 <output name="dataMatrixOut" file="MTBLS1_bucketedData.tabular" />
|
|
117 <output name="sampleOut" file="MTBLS1_sampleMetadata.tabular" />
|
|
118 <output name="variableOut" file="MTBLS1_variableMetadata.tabular" />
|
|
119 </test>
|
|
120 </tests>
|
|
121
|
|
122 <help>
|
|
123
|
|
124 .. class:: infomark
|
|
125
|
|
126 **Authors** Marie Tremblay-Franco (marie.tremblay-franco@toulouse.inra.fr), Marion Landi (marion.landi@clermont.inra.fr) and Franck Giacomoni (fgiacomoni@clermont.inra.fr)
|
|
127
|
|
128
|
|
129 =============
|
|
130 NMR Bucketing
|
|
131 =============
|
|
132
|
|
133 -----------
|
|
134 Description
|
|
135 -----------
|
|
136
|
|
137 Bucketing / Binning (spectra segmentation in fixed-size windows) and integration (sum of absolute intensities inside each bucket) to preprocess NMR data
|
|
138
|
|
139 -----------------
|
|
140 Workflow position
|
|
141 -----------------
|
|
142
|
|
143 **Upstream tools**
|
|
144
|
|
145 ========================= ============================ =======
|
|
146 Name output file format
|
|
147 ========================= ============================ =======
|
|
148 NMRAlignment NMR_Alignment_alignedSpectra tsv
|
|
149 ========================= ============================ =======
|
|
150
|
|
151 **Downstream tools**
|
|
152
|
|
153 +---------------------------+----------------------+--------+
|
|
154 | Name | Output file | Format |
|
|
155 +===========================+======================+========+
|
|
156 |NmrNormalization | dataMatrix.tsv | Tabular|
|
|
157 +---------------------------+----------------------+--------+
|
|
158 |Univariate | variableMetadata.tsv | Tabular|
|
|
159 +---------------------------+----------------------+--------+
|
|
160 |Multivariate | sampleMetadata.tsv | Tabular|
|
|
161 +---------------------------+----------------------+--------+
|
|
162 | | variableMetadata.tsv | Tabular|
|
|
163 +---------------------------+----------------------+--------+
|
|
164
|
|
165
|
|
166 -----------
|
|
167 Input files
|
|
168 -----------
|
|
169
|
|
170 +---------------------------+------------+
|
|
171 | Parameter : num + label | Format |
|
|
172 +===========================+============+
|
|
173 | 1 : Choose your inputs | zip |
|
|
174 +---------------------------+------------+
|
|
175 | 1 : Choose your inputs | tsv |
|
|
176 +---------------------------+------------+
|
|
177
|
|
178 **Choose your inputs**
|
|
179
|
|
180 You have three methods for your inputs:
|
|
181
|
|
182 | Zip file (recommended): You can put a zip file containing your inputs as raw Bruker files: myinputs.zip (containing all your conditions as sub-directories).
|
|
183 | Tsv file: You can put a tsv file containing your inputs as preprocessed spectra: myinputs.tsv (containing all your conditions in columns and chemical shifts in rows).
|
|
184
|
|
185 .. image:: ./static/images/Mth_Architecture_Repertoire_Bruker.png
|
|
186 :width: 800
|
|
187
|
|
188 ----------
|
|
189 Parameters
|
|
190 ----------
|
|
191
|
|
192 Bucket width
|
|
193 | size of windows
|
|
194 |
|
|
195
|
|
196 Left limit
|
|
197 | Upper boundary: values greater than this value are not used in the bucketing. Default value is 10.0 ppm
|
|
198 |
|
|
199
|
|
200 Right limit
|
|
201 | Lower boundary: values lower than this value are not used in the bucketing. Default value is 0.5 ppm
|
|
202 |
|
|
203
|
|
204 Exclusion zone(s)
|
|
205 | Spectral regions to exclude, water, solvents, ... resonance
|
|
206 | If YES: parameters **Lower exclusion zone** and **Upper exclusion zone** are visible,
|
|
207 | If NO: no zone to exclude
|
|
208 | Default value is NO
|
|
209 |
|
|
210
|
|
211 Left exclusion zone
|
|
212 | Upper boundary of exclusion zone
|
|
213 |
|
|
214
|
|
215 Right exclusion zone
|
|
216 | Lower boundary of exclusion zone
|
|
217
|
|
218 | *Notes:*
|
|
219 | - these parameters can be used several times using the "Add new exclusion zones" button
|
|
220 |
|
|
221
|
|
222 Spectra representation:
|
|
223 | Graphical chart of bucketed and integrated raw files
|
|
224 | If "Overlay": the n (sample number) spectra are overlaid on the same figure
|
|
225 | If "One_per_individual": pdf file includes n pages (1 per sample)
|
|
226 |
|
|
227
|
|
228
|
|
229 ------------
|
|
230 Output files
|
|
231 ------------
|
|
232
|
|
233
|
|
234 bucketedData.tsv
|
|
235 | tabular output
|
|
236 | Data matrix with p rows (buckets) and n columns (samples) containing the intensities
|
|
237 |
|
|
238
|
|
239 sampleMetadata.tsv
|
|
240 | tabular output
|
|
241 | file with n rows (samples) and 2 columns containing sample identifier (rownames) and sample order: the rownames of sampleMetadata must be identical to the colnames of the bucketedData. Can add columns with numeric and/or character sample metadata. This file is optional in the normalization step and mandatory in the statistical analysis step of the workflow.
|
|
242 |
|
|
243
|
|
244 variableMetadata.tsv
|
|
245 | tabular output
|
|
246 | file with p rows (buckets) and 2 columns containing variable identifier (rownames) and bucket order: the rownames of variableMetadata must be identical to the rownames of the bucketedData. Can add columns with numeric and/or character variable metadata. This file is mandatory in the statistical analysis step of the workflow.
|
|
247 |
|
|
248
|
|
249 spectra.pdf
|
|
250 | pdf output
|
|
251 | Graphical chart of bucketed and integrated data
|
|
252 |
|
|
253
|
|
254
|
|
255 ---------------------------------------------------
|
|
256
|
|
257 ---------------
|
|
258 Working example
|
|
259 ---------------
|
|
260
|
|
261
|
|
262 .. class:: warningmark
|
|
263
|
|
264 Under construction
|
|
265
|
|
266 .. image:: ./static/images/Mth_Travaux.png
|
|
267 :width: 100
|
|
268
|
|
269 ---------------------------------------------------
|
|
270
|
|
271 Changelog/News
|
|
272 --------------
|
|
273
|
|
274 **Version 1.0.3 - 24/10/2016**
|
|
275
|
|
276 - ENHANCEMENT: add possibility of bucketing processed files (upstream tools)
|
|
277
|
|
278 **Version 1.0.2 - 12/08/2016**
|
|
279
|
|
280 - ENHANCEMENT: x-axis customization: add chemical shift labels
|
|
281
|
|
282 **Version 1.0.1 - 04/04/2016**
|
|
283
|
|
284 - TEST: refactoring to pass planemo test using conda dependencies
|
|
285
|
|
286
|
|
287 **Version 2015-01-08 - 08/01/2015**
|
|
288
|
|
289 </help>
|
|
290 <citations>
|
|
291 <citation type="doi">10.1093/bioinformatics/btu813</citation>
|
|
292 </citations>
|
|
293 </tool>
|