comparison abims_CAMERA_annotateDiffreport.xml @ 0:e0afb8854cc4 draft

planemo upload
author lecorguille
date Fri, 07 Aug 2015 11:08:16 -0400
parents
children 729991209550
comparison
equal deleted inserted replaced
-1:000000000000 0:e0afb8854cc4
1 <tool id="abims_CAMERA_annotateDiffreport" name="CAMERA.annotate" version="2.0.1">
2
3 <description>CAMERA annotate function. Returns annotation results (isotope peaks, adducts and fragments) and a diffreport if more than one condition.</description>
4
5 <requirements>
6 <requirement type="package" version="3.1.2">R</requirement>
7 <requirement type="binary">Rscript</requirement>
8 <requirement type="package" version="1.44.0">xcms</requirement>
9 <requirement type="package" version="1.22.0">camera</requirement>
10 <requirement type="package" version="2.1">camera_w4m_script</requirement>
11 </requirements>
12
13 <stdio>
14 <exit_code range="1:" level="fatal" />
15 </stdio>
16
17 <command>
18 CAMERA.r
19 xfunction annotatediff image $image
20 convert_param $convert_param num_digits $num_digits nSlaves \${GALAXY_SLOTS:-1}
21 sigma $sigma perfwhm $perfwhm
22 maxcharge $maxcharge maxiso $maxiso minfrac $minfrac
23 ppm $ppm mzabs $mzabs intval $intval
24 max_peaks $max_peaks
25 quick $quick_block.quick
26 #if $quick_block.quick == "FALSE"
27 polarity $quick_block.polarity
28 cor_eic_th $quick_block.cor_eic_th
29 graphMethod $quick_block.graphMethod
30 pval $quick_block.pval
31 calcCiS $quick_block.calcCiS
32 calcIso $quick_block.calcIso
33 calcCaS $quick_block.calcCaS
34 multiplier $quick_block.multiplier
35 #end if
36
37 #if $options.option == "show":
38 eicmax $options.eicmax
39 eicwidth $options.eicwidth
40 value $options.value
41 sortpval $options.sortpval
42 h $options.h
43 w $options.w
44 mzdec $options.mzdec
45 #else
46 eicmax 0
47 eicwidth 200
48 value "into"
49 sortpval TRUE
50 h 480
51 w 640
52 mzdec 2
53 #end if
54 &amp;&amp; (
55 mv variableMetadata.tsv $variableMetadata;
56 mv dataMatrix.tsv $datamatrix;
57 mv annotatediff.RData $rdata
58 );
59 cat xset.log
60
61
62 </command>
63
64 <inputs>
65
66
67 <param name="image" type="data" label="RData file" format="rdata.xcms.fillpeaks,rdata" help="output file from another function xcms (fillPeaks)" />
68
69 <param name="convert_param" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="Convert retention time (seconds) into minutes" help="Convert the columns rtmed, rtmin and rtmax into minutes"/>
70 <param name="num_digits" type="integer" value="0" label="" help="Number of decimal places for mass values reported in ions identifiers" />
71
72 <param name="sigma" type="integer" value="6" label="groupFWHM: multiplier of the standard deviation" help="[sigma]" />
73 <param name="perfwhm" type="float" value="0.6" max="1" min="0" label="groupFWHM: percentage of FWHM width" help="[perfwhm]" />
74 <param name="maxcharge" type="integer" value="3" label="findIsotopes: max. ion charge" help="[maxcharge]" />
75 <param name="maxiso" type="integer" value="4" label="findIsotopes: max. number of expected isotopes" help="[maxiso]" />
76 <param name="minfrac" type="float" value="0.5" max="1" min="0" label="findIsotopes: The percentage number of samples, which must satisfy the C12/C13 rule for isotope annotation" help="[minfrac]" />
77 <param name="ppm" type="integer" value="5" label="General ppm error" help="[ppm]" />
78 <param name="mzabs" type="float" value="0.015" label="mzabs" help="General absolut error in m/z" />
79 <param name="intval" type="select" label="General used intensity value" help="[intval] See the help section below">
80 <option value="into" selected="true">into</option>
81 <option value="maxo" >maxo</option>
82 <option value="intb">intb</option>
83 </param>
84
85
86 <param name="max_peaks" type="integer" value="100" label="How much peaks will be calculated in every thread using the parallel mode" help="[max_peaks]" />
87 <conditional name="quick_block">
88 <param name="quick" type="select" label="Quick mode" help="[quick] If TRUE, use only groupFWHM and findIsotopes functions. Else if FALSE, use also groupCorr and findAdducts">
89 <option value="TRUE">TRUE</option>
90 <option value="FALSE" selected="true">FALSE</option>
91 </param>
92 <when value="FALSE">
93 <param name="polarity" type="select" label="findAdducts: Which polarity mode was used for measuring of the ms sample" help="polarity">
94 <option value="positive" >positive</option>
95 <option value="negative" selected="true">negative</option>
96 </param>
97 <param name="cor_eic_th" type="float" value="0.75" max="1" min="0" label="groupCorr: correlation threshold (0..1)" help="[cor_eic_th]" />
98 <param name="graphMethod" type="select" label="groupCorr: Method selection for grouping peaks after correlation analysis into pseudospectra" help="[graphMethod]">
99 <option value="hcs" selected="true">hcs</option>
100 <option value="lpc">lpc</option>
101 </param>
102 <param name="pval" type="float" value="0.05" max="1" min="0" label="groupCorr: significant correlation threshold" help="[pval]" />
103 <param name="calcCiS" type="boolean" checked="true" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use correlation inside samples for peak grouping" help="[calcCiS]"/>
104 <param name="calcIso" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use isotopic relationship for peak grouping" help="[calcIso]"/>
105 <param name="calcCaS" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use correlation across samples for peak grouping" help="[calcCaS]"/>
106 <param name="multiplier" type="integer" value="3" label="findAdducts: If no ruleset is provided, calculate ruleset with max. number n of [nM+x] clusterions" help="[multiplier]" />
107 </when>
108 <when value="TRUE">
109 <param name="polarity" type="hidden" value="quick" label="for the output label" help="for the output label" />
110 </when>
111 </conditional>
112
113
114 <!-- Annotatediffreport specific parameters -->
115 <conditional name="options">
116 <param name="option" type="select" label="Number of condition">
117 <option value="hide" selected="true">One condition</option>
118 <option value="show">Two or more conditions</option>
119 </param>
120 <when value="show">
121 <param name="eicmax" type="integer" value="0" label="diffreport: number of the most significantly different analytes to create EICs for" help="[eicmax]" />
122 <param name="eicwidth" type="integer" value="200" label="diffreport: width (in seconds) of EICs produced" help="[eicwidth]" />
123 <param name="value" type="select" label="diffreport: Intensity values to be used for the diffreport" help="[value]">
124 <option value="into" selected="true">into</option>
125 <option value="maxo" >maxo</option>
126 <option value="intb">intb</option>
127 </param>
128 <param name="h" type="integer" value="480" label="diffreport: Numeric variable for the height of the eic and boxplots that are printed out" help="[height]" />
129 <param name="w" type="integer" value="640" label="diffreport: Numeric variable for the width of the eic and boxplots print out made" help="[width]" />
130 <param name="mzdec" type="integer" value="2" label="diffreport: Number of decimal places of title m/z values in the eic plot" help="[mzdec]" />
131 <param name="sortpval" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="diffreport: logical indicating whether the reports should be sorted by p-value" help="[sortpval]"/>
132 </when>
133 <when value="hide">
134 </when>
135 </conditional>
136
137 </inputs>
138
139 <outputs>
140 <data name="variableMetadata" format="tabular" label="${image.name[:-6]}.annotate.variableMetadata.tsv" >
141 <discover_datasets pattern="__designation_and_ext__" directory="zip" visible="true" />
142 </data>
143 <data name="datamatrix" format="tabular" label="${image.name[:-6]}.annotate.dataMatrix.tsv" />
144 <data name="rdata" format="rdata.camera.quick" label="${image.name[:-6]}.annotate.${$quick_block.polarity}.Rdata" >
145 <change_format>
146 <when input="quick_block.polarity" value="positive" format="rdata.camera.positive" />
147 <when input="quick_block.polarity" value="negative" format="rdata.camera.negative" />
148 </change_format>
149 </data>
150 </outputs>
151
152 <tests>
153 <test>
154 <param name="image" value="xset.group.retcor.group.fillPeaks.RData"/>
155 <param name="convert_param" value="False"/>
156 <param name="num_digits" value="0"/>
157 <param name="sigma" value="6"/>
158 <param name="perfwhm" value="0.6"/>
159 <param name="maxcharge" value="3"/>
160 <param name="maxiso" value="4"/>
161 <param name="minfrac" value="0.5"/>
162 <param name="ppm" value="5"/>
163 <param name="mzabs" value="0.015"/>
164 <param name="intval" value="into"/>
165 <param name="max_peaks" value="100"/>
166 <param name="quick_block.quick" value="FALSE"/>
167 <param name="quick_block.polarity" value="negative"/>
168 <param name="quick_block.cor_eic_th" value="0.75"/>
169 <param name="quick_block.graphMethod" value="hcs"/>
170 <param name="quick_block.pval" value="0.05"/>
171 <param name="quick_block.calcCiS" value="True"/>
172 <param name="quick_block.calcIso" value="False"/>
173 <param name="quick_block.calcCaS" value="False"/>
174 <param name="quick_block.multiplier" value="3"/>
175 <param name="options.option" value="show"/>
176 <param name="options.eicmax" value="200"/>
177 <param name="options.eicwidth" value="200"/>
178 <param name="options.value" value="into"/>
179 <param name="options.h" value="480"/>
180 <param name="options.w" value="640"/>
181 <param name="options.mzdec" value="2"/>
182 <param name="options.sortpval" value="False"/>
183 <output name="variableMetadata" file="xset.group.retcor.group.fillPeaks.annotate.variableMetadata.tsv" />
184 <output name="datamatrix" file="xset.group.retcor.group.fillPeaks.annotate.dataMatrix.tsv" />
185 <output name="rdata" file="xset.group.retcor.group.fillPeaks.annotate.negative.Rdata" />
186 </test>
187 </tests>
188
189
190
191 <help>
192
193 .. class:: infomark
194
195 **Authors** Carsten Kuhl ckuhl@ipb-halle.de, Ralf Tautenhahn rtautenh@scripps.edu, Steffen Neumann sneumann@@ipb-halle.de
196
197 .. class:: infomark
198
199 **Galaxy integration** ABiMS TEAM - UPMC/CNRS - Station biologique de Roscoff and Yann Guitton yann.guitton@univ-nantes.fr - part of Workflow4Metabolomics.org [W4M]
200
201 | Contact support@workflow4metabolomics.org for any questions or concerns about the Galaxy implementation of this tool.
202
203 ---------------------------------------------------
204
205
206 ================
207 CAMERA.annotate
208 ================
209
210 -----------
211 Description
212 -----------
213
214 The R-package CAMERA is a Collection of Algorithms for MEtabolite
215 pRofile Annotation. Its primary purpose is the annotation and evaluation of
216 LC-MS data. It includes algorithms for annotation of isotope peaks, adducts
217 and fragments in peak lists. Additional methods cluster mass signals that
218 originate from a single metabolite, based on rules for mass differences and
219 peak shape comparison. To use the strength of already existing programs,
220 CAMERA is designed to interact directly with processed peak data from the
221 R-package **xcms**.
222
223 **What it does?**
224
225 The CAMERA annotation procedure can be split into two parts: We want to answer the questions which peaks occur from the same molecule and secondly compute its exact mass and annotate the ion species. Therefore CAMERA annotation workflow contains following primary functions: 1. peak grouping after retention time (**groupFWHM**) 2. peak group verification with peakshape correlation (**groupCorr**) Both methods separate peaks into different groups, which we define as ”pseu- dospectra”. Those pseudospectra can consists from one up to 100 ions, de- pending on the molecules amount and ionizability. Afterwards the exposure of the ion species can be performed with: 2 1. annotation of possible isotopes (**findIsotopes**) 2. annotation of adducts and calculating hypothetical masses for the group (**findAdducts**) This workflow results in a data-frame similar to a xcms peak table, that can be easily stored in a comma separated table .csv (Excel-readable).
226
227 If you have two or more conditions, it will return a diffreport result within the annotation results.
228 The diffreport result shows the most significant differences between two sets of samples. Optionally
229 create extracted ion chromatograms for the most significant differences.
230
231
232 -----------------
233 Workflow position
234 -----------------
235
236
237 **Upstream tools**
238
239 ========================= ==================== ====================== ==========
240 Name output file format parameter
241 ========================= ==================== ====================== ==========
242 xcms.fillPeaks xset.fillPeaks.RData rdata.xcms.fillpeaks RData file
243 ========================= ==================== ====================== ==========
244
245
246 **Downstream tools**
247
248 +---------------------------+---------------------------------------+------------------------------------------------+
249 | Name | Output file | Format |
250 +===========================+=======================================+================================================+
251 |CAMERA_combinexsAnnot |xset.annotate.dataMatrix.tsv | rdata.camera.positive or rdata.camera.negative |
252 +---------------------------+---------------------------------------+------------------------------------------------+
253 |Determine Vdk or Lowess |xset.annotate.dataMatrix.tsv | Tabular |
254 +---------------------------+---------------------------------------+------------------------------------------------+
255 |Normalization Vdk/Lowess |xset.annotate.dataMatrix.tsv | Tabular |
256 +---------------------------+---------------------------------------+------------------------------------------------+
257 |Anova |xset.annotate.dataMatrix.tsv | Tabular |
258 +---------------------------+---------------------------------------+------------------------------------------------+
259 |PCA |xset.annotate.dataMatrix.tsv | Tabular |
260 +---------------------------+---------------------------------------+------------------------------------------------+
261 |Hierarchical Clustering |xset.annotate.dataMatrix.tsv | Tabular |
262 +---------------------------+---------------------------------------+------------------------------------------------+
263
264
265 The output file **xset.annotate.dataMatrix.tsv** is an tabular file. You can continue your analysis using it in the following tools:
266
267 | Determine Vdk or Lowess
268 | Normalization Vdk/Lowess
269 | Anova
270 | PCA
271 | Hierarchical Clustering
272
273
274 **General schema of the metabolomic workflow**
275
276 .. image:: annotate_workflow.png
277
278 -----------
279 Input files
280 -----------
281
282 +---------------------------+---------------------------+
283 | Parameter : num + label | Format |
284 +===========================+===========================+
285 | 1 : RData file | rdata.xcms.fillpeaks |
286 +---------------------------+---------------------------+
287
288
289 ----------
290 Parameters
291 ----------
292
293 diffreport: Intensity values to be used for the diffreport
294 ----------------------------------------------------------
295
296 | If **value="into"**, integrated peak intensities are used.
297 | If **value="maxo"**, maximum peak intensities are used.
298 | If **value="intb"**, baseline corrected integrated peak intensities are used (only available if peak detection was done by ‘findPeaks.centWave’).
299
300
301
302 ------------
303 Output files
304 ------------
305
306 xset.annotate.variableMetadata.tsv
307
308 | For each metabolite (row) :
309 | the value of the intensity in each sample, fold, anova, mzmed, mzmin, mzmax, rtmed, rtmin, rtmax, npeaks, isotopes, adduct and pcgroup
310
311 xset.annotate.dataMatrix.tsv
312
313 | A tabular file which represents for each metabolite (row), the value of the intensity in each sample (column).
314
315 xset.annotate.zip
316
317 | It contains filebase_eic, filebase_box and filebase.tsv for one conditon vs another (Anova analysis).
318
319 xset.annotate.Rdata rdata.camera.quick or rdata.camera.positive or rdata.camera.negative
320
321 | Rdata file, that be used outside Galaxy in R.
322
323 ------
324
325 .. class:: infomark
326
327 The output **"xset.annotate.dataMatrix.tsv"** is a tabular file. You can continue your analysis using it in the following tools of the workflow:
328
329 | Determine Vdk or Lowess (Data correction)
330 | Normalization Vdk/Lowess (Data correction)
331 | Anova (Statistical analysis)
332 | PCA (Statistical analysis)
333 | Hierarchical Clustering (Statistical analysis)
334
335
336 ---------------------------------------------------
337
338 ---------------
339 Working example
340 ---------------
341
342 Input files
343 -----------
344
345 | RData file -> **xset.fillPeaks.RData**
346
347 Parameters
348 ----------
349
350 | sortpval -> **false**
351 | sigma -> **6 (default)**
352 | perfwhm -> **0.6 (default)**
353 | maxcharge -> **3 (default)**
354 | maxiso -> **4 (default)**
355 | minfrac -> **0.5 (default)**
356 | ppm -> **500**
357 | mzabs -> **0.015(default)**
358 | Advanced options -> **hide**
359 | Numver of condition -> Two or more conditioons
360 | eicmax -> **200**
361 | eicwidth -> **200 (default)**
362
363
364
365 Output files
366 ------------
367
368 **Example of an xset.annotate.dataMatrix.tsv output**
369
370 .. image:: annotatediffreport_dataMatrix.png
371
372 **Example of a part of xset.annotate.variableMetadata.tsv output**
373
374 .. image:: annotatediffreport_variableMetadata.png
375
376 </help>
377
378 <citations>
379 <citation type="doi">10.1021/ac202450g</citation>
380 <citation type="doi">10.1093/bioinformatics/btu813</citation>
381 </citations>
382
383
384 </tool>
385
386