0
|
1 <tool id="abims_xcms_group" name="xcms.group" version="2.0.2">
|
|
2
|
|
3 <description>Group peaks together across samples using overlapping m/z bins and calculation of smoothed peak distributions in chromatographic time.</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="2.1">xcms_w4m_script</requirement>
|
|
10 </requirements>
|
|
11
|
|
12 <stdio>
|
|
13 <exit_code range="1:" level="fatal" />
|
|
14 </stdio>
|
|
15
|
|
16 <command>
|
|
17 xcms.r
|
|
18 xfunction group image $image method $methods.method sleep 0.001
|
|
19 #if $methods.method == "density":
|
|
20 ## minsamp $methods.minsamp
|
|
21 minfrac $methods.minfrac
|
|
22 bw $methods.bw
|
|
23 mzwid $methods.mzwid
|
|
24 #if $methods.density_options.option == "show":
|
|
25 max $methods.density_options.max
|
|
26 #end if
|
|
27 #elif $methods.method == "mzClust":
|
|
28 mzppm $methods.mzppm
|
|
29 mzabs $methods.mzabs
|
|
30 minfrac $methods.minfrac
|
|
31 ## minsamp $methods.minsamp
|
|
32 #else:
|
|
33 mzVsRTbalance $methods.mzVsRTbalance
|
|
34 mzCheck $methods.mzCheck
|
|
35 rtCheck $methods.rtCheck
|
|
36 kNN $methods.kNN
|
|
37 #end if
|
|
38 && (
|
|
39 mv group.RData $xsetRData;
|
|
40 mv Rplots.pdf $rplotsPdf
|
|
41 );
|
|
42 cat xset.log
|
|
43 </command>
|
|
44
|
|
45 <inputs>
|
|
46 <param name="image" type="data" format="rdata.xcms.raw,rdata.xcms.group,rdata.xcms.retcor,rdata" label="xset RData file" help="output file from another function xcms (xcmsSet, retcor etc.)" />
|
|
47 <conditional name="methods">
|
|
48 <param name="method" type="select" label="Method to use for grouping" help="[method] See the help section below">
|
|
49 <option value="density" selected="true">density</option>
|
|
50 <option value="mzClust" >mzClust</option>
|
|
51 <option value="nearest" >nearest</option>
|
|
52 </param>
|
|
53 <when value="density">
|
|
54 <param name="bw" type="integer" value="30" label="Bandwidth" help="[bw] bandwidth (standard deviation or half width at half maximum) of gaussian smoothing kernel to apply to the peak density chromatogram" />
|
|
55 <param name="minfrac" type="float" value="0.5" label="Minimum fraction of samples necessary" help="[minfrac] in at least one of the sample groups for it to be a valid group" />
|
|
56 <param name="mzwid" type="float" value="0.25" label="Width of overlapping m/z slices" help="[mzwid] to use for creating peak density chromatograms and grouping peaks across samples " />
|
|
57 <!--
|
|
58 <param name="minsamp" type="hidden" value="1" label="minsamp" help="minimum number of samples necessary in at least one of the sample groups for it to be a valid group " />
|
|
59 -->
|
|
60 <conditional name="density_options">
|
|
61 <param name="option" type="select" label="Advanced options">
|
|
62 <option value="show">show</option>
|
|
63 <option value="hide" selected="true">hide</option>
|
|
64 </param>
|
|
65 <when value="show">
|
|
66 <param name="max" type="integer" value="5" label="Maximum number of groups to identify in a single m/z slice" help="[max]" />
|
|
67 </when>
|
|
68 <when value="hide">
|
|
69 </when>
|
|
70 </conditional>
|
|
71
|
|
72 </when>
|
|
73 <when value="mzClust">
|
|
74 <param name="mzppm" type="integer" value="20 " label="Relative error used for clustering/grouping in ppm" help="[mzppm]" />
|
|
75 <param name="mzabs" type="float" value="0" label="Absolute error used for clustering/grouping" help="[mzabs]" />
|
|
76 <param name="minfrac" type="float" value="0" label="Minimum fraction of each class in one bin" help="[minfrac] minimum fraction of samples necessary in at least one of the sample groups for it to be a valid group" />
|
|
77 <!--
|
|
78 <param name="minsamp" type="hidden" value="1" label="minsamp" help="minimum number of samples necessary in at least one of the sample groups for it to be a valid group " />
|
|
79 -->
|
|
80 </when>
|
|
81 <when value="nearest">
|
|
82 <param name="mzVsRTbalance" type="integer" value="10 " label="Multiplicator for mz value before calculating the (euclidean) distance between two peaks." help="[mzVsRTbalance]" />
|
|
83 <param name="mzCheck" type="float" value="0.2" label="Maximum tolerated distance for mz" help="[mzCheck]" />
|
|
84 <param name="rtCheck" type="integer" value="15" label="Maximum tolerated distance for RT" help="[rtCheck]" />
|
|
85 <param name="kNN" type="integer" value="10" label="Number of nearest Neighbours to check" help="[kNN]" />
|
|
86 </when>
|
|
87 </conditional>
|
|
88 <!--
|
|
89 <param name="sleepy" type="float" value="0.001" label="sleep" help="seconds to pause between plotting successive steps of the peak grouping algorithm. peaks are plotted as points showing relative intensity. identified groups are flanked by dotted vertical lines">
|
|
90 <validator type="in_range" message="Must be more than 0" min="0.001" max="inf"/>
|
|
91 </param>
|
|
92 -->
|
|
93
|
|
94 </inputs>
|
|
95
|
|
96 <outputs>
|
|
97 <data name="xsetRData" format="rdata.xcms.group" label="${image.name[:-6]}.group.RData"/>
|
|
98 <data name="rplotsPdf" format="pdf" label="${image.name[:-6]}.group.Rplots.pdf"/>
|
|
99 </outputs>
|
|
100
|
|
101 <tests>
|
|
102 <test>
|
|
103 <param name="image" value="xset.RData"/>
|
|
104 <param name="methods.method" value="density"/>
|
|
105 <param name="methods.bw" value="5"/>
|
|
106 <param name="methods.minfrac" value="0.3"/>
|
|
107 <param name="methods.mzwid" value="0.01"/>
|
|
108 <param name="methods.density_options.option" value="show"/>
|
|
109 <param name="methods.density_options.max" value="50"/>
|
|
110 <output name="xsetRData" file="xset.group.RData" />
|
|
111 <output name="rplotsPdf" file="xset.group.Rplots.pdf" />
|
|
112
|
|
113 </test>
|
|
114 </tests>
|
|
115
|
|
116 <help>
|
|
117
|
|
118 .. class:: infomark
|
|
119
|
|
120 **Authors** Colin A. Smith csmith@scripps.edu, Ralf Tautenhahn rtautenh@gmail.com, Steffen Neumann sneumann@ipb-halle.de, Paul Benton hpaul.benton08@imperial.ac.uk and Christopher Conley cjconley@ucdavis.edu
|
|
121
|
|
122 **Galaxy integration** ABiMS TEAM - UPMC/CNRS - Station biologique de Roscoff and Yann Guitton yann.guitton@univ-nantes.fr - part of Workflow4Metabolomics.org [W4M]
|
|
123
|
|
124 | Contact support@workflow4metabolomics.org for any questions or concerns about the Galaxy implementation of this tool.
|
|
125
|
|
126
|
|
127
|
|
128 ---------------------------------------------------
|
|
129
|
|
130 ==========
|
|
131 Xcms.Group
|
|
132 ==========
|
|
133
|
|
134 -----------
|
|
135 Description
|
|
136 -----------
|
|
137
|
|
138 After peak identification with xcmsSet, this tool groups the peaks which represent the same analyte across samples using overlapping m/z bins and calculation of smoothed peak distributions in chromatographic time. Allows rejection of features, which are only partially detected within the replicates of a sample class.
|
|
139
|
|
140
|
|
141
|
|
142 -----------------
|
|
143 Workflow position
|
|
144 -----------------
|
|
145
|
|
146 **Upstream tools**
|
|
147
|
|
148 ========================= ================= =================== ==========
|
|
149 Name output file format parameter
|
|
150 ========================= ================= =================== ==========
|
|
151 xcms.xcmsSet xset.RData rdata.xcms.raw RData file
|
|
152 ------------------------- ----------------- ------------------- ----------
|
|
153 xcms.retcor xset.RData rdata.xcms.retcor RData file
|
|
154 ========================= ================= =================== ==========
|
|
155
|
|
156
|
|
157 **Downstream tools**
|
|
158
|
|
159 +---------------------------+--------------------------------------+
|
|
160 | Name | Output file | Format |
|
|
161 +===========================+=================+====================+
|
|
162 |xcms.retcor | xset.RData | rdata.xcms.group |
|
|
163 +---------------------------+--------------------------------------+
|
|
164 |xcms.fillPeaks | xset.RData | rdata.xcms.group |
|
|
165 +---------------------------+--------------------------------------+
|
|
166
|
|
167 The output file is an xcmsSet.RData file. You can continue your analysis using it in **xcms.retcor** tool as an next step and then **xcms.fillPeaks**.
|
|
168
|
|
169 **General schema of the metabolomic workflow**
|
|
170
|
|
171 .. image:: xcms_group_workflow.png
|
|
172
|
|
173
|
|
174 -----------
|
|
175 Input files
|
|
176 -----------
|
|
177
|
|
178 +---------------------------+-----------------------+
|
|
179 | Parameter : num + label | Format |
|
|
180 +===========================+=======================+
|
|
181 | 1 : RData file | rdata.xcms.group |
|
|
182 +---------------------------+-----------------------+
|
|
183
|
|
184
|
|
185 ----------
|
|
186 Parameters
|
|
187 ----------
|
|
188
|
|
189 Method to use for grouping
|
|
190 --------------------------
|
|
191
|
|
192 **mzClust**
|
|
193
|
|
194 | Runs high resolution alignment on single spectra samples stored in the RData file generated by the **xcmsSet tool**.
|
|
195
|
|
196 **density**
|
|
197
|
|
198 | Groups peaks together across samples using overlapping m/z bins and calculation of smoothed peak distributions in chromatographic time.
|
|
199
|
|
200 **nearest**
|
|
201
|
|
202 | Groups peaks together across samples by creating a master peak list and assigning corresponding peaks from all samples. It is inspired by the alignment algorithm of mzMine.
|
|
203
|
|
204
|
|
205 ------------
|
|
206 Output files
|
|
207 ------------
|
|
208
|
|
209 xset.group.Rplots.pdf
|
|
210
|
|
211 xset.group.RData: rdata.xcms.group format
|
|
212
|
|
213 | Rdata file that will be necessary in the third and fourth step of the workflow (xcms.retcor and xcms.fillpeaks).
|
|
214
|
|
215
|
|
216 ------
|
|
217
|
|
218 .. class:: infomark
|
|
219
|
|
220 The output file is an xset.group.RData file. You can continue your analysis using it in **xcms.retcor** tool.
|
|
221
|
|
222
|
|
223 ---------------------------------------------------
|
|
224
|
|
225
|
|
226 ---------------
|
|
227 Working example
|
|
228 ---------------
|
|
229
|
|
230 Input files
|
|
231 -----------
|
|
232
|
|
233 | RData file -> **xset.RData**
|
|
234
|
|
235 Parameters
|
|
236 ----------
|
|
237
|
|
238 | Method -> **density**
|
|
239 | bw -> **5**
|
|
240 | minfrac -> **0.3**
|
|
241 | mzwid -> **0.01**
|
|
242 | Advanced options: **show**
|
|
243 | max -> **50**
|
|
244
|
|
245
|
|
246 Output files
|
|
247 ------------
|
|
248
|
|
249 | **1) xset.RData: RData file**
|
|
250
|
|
251 | **2) Example of an xset.group.Rplots pdf file**
|
|
252
|
|
253 .. image:: xcms_group.png
|
|
254 :width: 700
|
|
255
|
|
256
|
2
|
257
|
0
|
258 </help>
|
|
259
|
|
260
|
|
261 <citations>
|
|
262 <citation type="doi">10.1021/ac051437y</citation>
|
|
263 <citation type="doi">10.1093/bioinformatics/btu813</citation>
|
|
264 </citations>
|
|
265
|
|
266
|
|
267 </tool>
|