Mercurial > repos > pieterlukasse > prims_metabolomics
comparison metams_lcms_pick_and_group.xml @ 49:f772a5caa86a
Added more options and better documentation.
Added MsClust support for parsing XCMS alignment results.
Improved output reports for XCMS wrappers.
New tools.
author | pieter.lukasse@wur.nl |
---|---|
date | Wed, 10 Dec 2014 22:03:27 +0100 |
parents | |
children | 684d2341968c |
comparison
equal
deleted
inserted
replaced
48:26b93438f30e | 49:f772a5caa86a |
---|---|
1 <tool id="metams_lcms_pick_and_group" name="METAMS-LC/MS Pick, Align and Group" version="0.0.4"> | |
2 <description> Runs metaMS process for LC/MS feature picking, aligning and grouping</description> | |
3 <requirements> | |
4 <requirement type="package" version="3.1.1">R_bioc_metams</requirement> | |
5 </requirements> | |
6 <command interpreter="Rscript"> | |
7 metaMS_cmd_pick_and_group.r | |
8 $data_files | |
9 $customMetaMSsettings | |
10 $outputFile | |
11 $xsetOut | |
12 $htmlReportFile | |
13 $htmlReportFile.files_path | |
14 $outputLog | |
15 </command> | |
16 <inputs> | |
17 <param name="data_files" type="data" format="prims.fileset.zip" label="Data files (.zip file with CDF, mzML or mzXML files)" help=".zip file containing the CDF, mzML or mzXML files of the new measurements"/> | |
18 | |
19 <param name="protocolName" type="text" size="30" label="protocolName" value="e.g. Synapt.QTOF.RP" | |
20 help="Choose a name to give for the specific settings in the parameters below"/><!-- TODO - let user choose this --> | |
21 | |
22 | |
23 <!-- ===========NB : if peak picking, alignment OR CAMERA settings have to be reused for runGC wrapper in the future, we can use Galaxy macro expansions here | |
24 to avoid defining these parameters again in the runGC wrapper ========================= --> | |
25 <conditional name="peakPicking"> | |
26 <param name="method" type="select" size="30" label="PEAK PICKING method =====================================================" | |
27 help="matchedFilter=Feature detection in the chromatographic time domain ; centWave=Feature detection for high resolution LC/MS data"> | |
28 <option value="matchedFilter" selected="true">matchedFilter</option> | |
29 <option value="centWave" >centWave</option> | |
30 </param> | |
31 <when value="matchedFilter"> | |
32 <param name="fwhm" type="integer" size="10" value="20" label="fwhm" | |
33 help="full width at half maximum of matched filtration gaussian model peak. Only used to calculate the actual sigma" /> | |
34 <param name="sigma_denom" type="float" size="10" value="2.3548" label="sigma_denominator" | |
35 help="denominator for standard deviation (width) of matched filtration model peak (e.g. sigma = fwhm/2.3548)" /> | |
36 <param name="max" type="integer" size="10" value="50" label="max" | |
37 help="maximum number of peaks per extracted ion chromatogram" /> | |
38 <param name="snthresh" type="integer" size="10" value="4" label="snthresh" | |
39 help="signal to noise ratio cutoff" /> | |
40 <param name="step" type="float" size="10" value="0.05" label="step" | |
41 help="step size to use for profile generation"/> | |
42 <param name="steps" type="integer" size="10" value="2" label="steps" | |
43 help="number of steps to merge prior to filtration"/> | |
44 <param name="mzdiff" type="float" size="10" value="0.8" label="mzdiff" | |
45 help="minimum difference in m/z for peaks with overlapping retention times"/> | |
46 </when> | |
47 <when value="centWave"> | |
48 <param name="ppm" type="integer" size="10" value="25" label="ppm" | |
49 help="maxmial tolerated m/z deviation in consecutive scans, in ppm" /> | |
50 <param name="peakwidth" type="text" size="10" value="20,50" label="peakwidth" | |
51 help="Chromatographic peak width, given as range (min,max) in seconds" /> | |
52 <param name="snthresh" type="integer" size="10" value="10" label="snthresh" | |
53 help="signal to noise ratio cutoff" /> | |
54 <param name="prefilter" type="text" size="10" value="3,100" label="prefilter=c(k,I)" | |
55 help="Prefilter step for the first phase. Mass traces are only retained if | |
56 they contain at least k peaks with intensity > = I" /> | |
57 <param name="mzCenterFun" type="select" size="30" label="mzCenterFun" | |
58 help="Function to calculate the m/z center of the feature: wMean intensity weighted mean of the | |
59 feature m/z values, mean mean of the feature m/z values, apex use m/z value at peak apex, | |
60 wMeanApex3 intensity weighted mean of the m/z value at peak apex and the m/z value left and | |
61 right of it, meanApex3 mean of the m/z value at peak apex and the m/z value left and right of it"> | |
62 <option value="wMean" selected="true">wMean</option> | |
63 <option value="mean" >mean</option> | |
64 <option value="apex" >apex</option> | |
65 <option value="wMeanApex3" >wMeanApex3</option> | |
66 <option value="meanApex3" >meanApex3</option> | |
67 </param> | |
68 <param name="integrate" type="select" size="30" label="integrate" | |
69 help="Integration method. If =1 peak limits are found through descent | |
70 on the mexican hat filtered data, if =2 the descent is done on the real data. | |
71 Method 2 is very accurate but prone to noise, while method 1 is more robust to noise but less exact"> | |
72 <option value="1" selected="true">1</option> | |
73 <option value="2" >2</option> | |
74 </param> | |
75 <param name="mzdiff" type="float" size="10" value="-0.001" label="mzdiff" | |
76 help="minimum difference in m/z for peaks with overlapping retention times, can be negative to allow overlap" /> | |
77 <param name="fitgauss" type="integer" size="10" value="20" label="fitgauss" | |
78 help="logical, if Yes: a Gaussian is fitted to each peak" > | |
79 <option value="TRUE" selected="true">Yes</option> | |
80 <option value="FALSE" >No</option> | |
81 </param> | |
82 <param name="noise" type="integer" size="10" value="0" label="noise" | |
83 help="optional argument which is useful for data that was centroided without any intensity | |
84 threshold, centroids with intensity < noise are omitted from ROI detection" /> | |
85 </when> | |
86 </conditional> | |
87 | |
88 | |
89 <param name="min_class_fraction" type="float" size="10" value="0.3" label="ALIGNMENT min.class.fraction =====================================================" | |
90 help="Minimum fraction of samples necessary in the alignment to make it a valid alignment/group"/> | |
91 <param name="min_class_size" type="integer" size="10" value="3" label="min.class.size" | |
92 help="Minimum number of samples necessary in the alignment to make it a valid alignment/group. The lowest criteria | |
93 between this and min.class.fraction will be used." /> | |
94 <param name="mzwid" type="float" size="10" value="0.1" label="mzwid" | |
95 help="width of overlapping m/z slices to use for creating peak density chromatograms and grouping peaks across samples"/> | |
96 <param name="bws" type="text" size="10" value="30,10" label="bws" | |
97 help="bandwidth (standard deviation or half width at half maximum) of gaussian smoothing kernel | |
98 to apply to the peak density chromatogram. Fill in two values separated by comma. First value is used for | |
99 first grouping round, seccond value is used for last grouping/alignment round after retention time | |
100 correction. "/> | |
101 | |
102 <conditional name="retcor"> | |
103 <param name="retcormethod" type="select" size="30" label="retcormethod" | |
104 help="retention time correction method. 'peakgroups' is the default density based approach, 'obiwarp' is | |
105 alignment data by Ordered Bijective Interpolated Warping "> | |
106 <option value="peakgroups" selected="true">peakgroups</option> | |
107 <option value="obiwarp" >obiwarp</option> | |
108 </param> | |
109 <when value="peakgroups"> | |
110 <param name="retcorfamily" type="select" size="30" label="retcorfamily" | |
111 help="retention time correction method type/family"> | |
112 <option value="symmetric" selected="true">symmetric</option> | |
113 <option value="gaussian">gaussian</option> | |
114 </param> | |
115 <param name="smooth" type="select" size="30" label="smooth" | |
116 help="either 'loess' for non-linear alignment or 'linear' for linear alignment"> | |
117 <option value="linear" selected="true">linear</option> | |
118 <option value="loess">loess (TODO - waiting for metaMS to add/parse this option)</option> | |
119 </param> | |
120 <param name="missingratio" type="float" size="10" value="0.2" label="missingratio" | |
121 help="ratio of missing samples to allow in retention time correction groups"/> | |
122 <param name="extraratio" type="float" size="10" value="0.1" label="extraratio" | |
123 help="ratio of extra peaks to allow in retention time correction correction groups"/> | |
124 </when> | |
125 <when value="obiwarp"> | |
126 <param name="profStep" type="integer" size="10" value="1" label="profStep" | |
127 help="step size (in m/z) to use for profile generation from the raw data files" /> | |
128 </when> | |
129 </conditional> | |
130 | |
131 <param name="fillPeaks" type="select" size="30" label="fillPeaks" | |
132 help="Fill missing peaks in peak groups/alignments that do not include peaks from every sample. | |
133 This method produces intensity values for those missing samples by integrating raw data in peak group region."> | |
134 <option value="TRUE" selected="true">Yes</option> | |
135 <option value="FALSE">No</option> | |
136 </param> | |
137 <param name="perfwhm" type="float" size="10" value="0.6" label="CAMERA perfwhm =====================================================" | |
138 help="percentage of FWHM width"/> | |
139 <param name="cor_eic_th" type="float" size="10" value="0.7" label="cor_eic_th" | |
140 help="correlation threshold (0..1)" /> | |
141 <param name="ppm" type="float" size="10" value="5.0" label="ppm" | |
142 help="General ppm error" /> | |
143 | |
144 <param name="groupCorr_graphMethod" type="select" size="30" label="(groupCorr)graphMethod" | |
145 help="Method selection for grouping peaks after correlation analysis into pseudospectra."> | |
146 <option value="hcs" selected="true">hcs</option> | |
147 </param> | |
148 | |
149 <param name="groupCorr_pval" type="float" size="10" value="0.05" label="(groupCorr)pval" | |
150 help="significant correlation threshold" /> | |
151 | |
152 <param name="groupCorr_calcCiS" type="select" size="30" label="(groupCorr)calcCiS" | |
153 help="Use correlation inside samples for peak grouping"> | |
154 <option value="TRUE" selected="true">Yes</option> | |
155 <option value="FALSE">No</option> | |
156 </param> | |
157 | |
158 <param name="groupCorr_calcIso" type="select" size="30" label="(groupCorr)calcIso" | |
159 help="Use isotopic relationship for peak grouping"> | |
160 <option value="TRUE" >Yes</option> | |
161 <option value="FALSE" selected="true">No</option> | |
162 </param> | |
163 | |
164 <param name="groupCorr_calcCaS" type="select" size="30" label="(groupCorr)calcCaS" | |
165 help="Use correlation across samples for peak grouping"> | |
166 <option value="TRUE" >Yes</option> | |
167 <option value="FALSE" selected="true">No</option> | |
168 </param> | |
169 | |
170 | |
171 <param name="findIsotopes_maxcharge" type="integer" size="10" value="3" label="(findIsotopes)maxcharge" | |
172 help="max. ion charge" /> | |
173 | |
174 <param name="findIsotopes_maxiso" type="integer" size="10" value="4" label="(findIsotopes)maxiso" | |
175 help="max. number of expected isotopes" /> | |
176 | |
177 <param name="findIsotopes_minfrac" type="float" size="10" value="0.5" label="(findIsotopes)minfrac" | |
178 help="The ratio for the number of samples, which must satisfy the C12/C13 rule for isotope annotation" /> | |
179 | |
180 <param name="findAdducts_polarity" type="select" size="30" label="(findAdducts)polarity" | |
181 help="Which polarity mode was used for measuring of the ms sample"> | |
182 <option value="positive" selected="true">positive</option> | |
183 <option value="negative" >negative</option> | |
184 </param> | |
185 | |
186 <param name="findAdducts_multiplier" type="integer" size="10" value="3" label="(findAdducts)multiplier" | |
187 help="If no ruleset is provided, calculate ruleset with max. number n of [nM+x] clusterions" /> | |
188 | |
189 | |
190 | |
191 </inputs> | |
192 <configfiles> | |
193 | |
194 <configfile name="customMetaMSsettings">## ==================================== | |
195 ## metaMS process settings | |
196 customMetaMSsettings <- metaMSsettings(protocolName = "${protocolName}", | |
197 chrom = "LC", | |
198 PeakPicking = list( | |
199 method = "${peakPicking.method}", | |
200 #if $peakPicking.method == "matchedFilter" | |
201 fwhm = ${peakPicking.fwhm}, | |
202 sigma = ${peakPicking.fwhm}/${peakPicking.sigma_denom}, | |
203 max = ${peakPicking.max}, | |
204 snthresh = ${peakPicking.snthresh}, | |
205 step = ${peakPicking.step}, | |
206 steps = ${peakPicking.steps}, | |
207 mzdiff = ${peakPicking.mzdiff}), | |
208 #else | |
209 ppm = ${peakPicking.ppm}, | |
210 peakwidth = c(${peakPicking.peakwidth}), | |
211 snthresh = ${peakPicking.snthresh}, | |
212 prefilter = c(${peakPicking.prefilter}), | |
213 mzCenterFun = "${peakPicking.mzCenterFun}", | |
214 integrate = ${peakPicking.integrate}, | |
215 mzdiff = ${peakPicking.mzdiff}, | |
216 fitgauss = ${peakPicking.fitgauss}, | |
217 noise = ${peakPicking.noise}), | |
218 #end if | |
219 Alignment = list( | |
220 min.class.fraction = ${min_class_fraction}, | |
221 min.class.size = ${min_class_size}, | |
222 mzwid = ${mzwid}, | |
223 bws = c(${bws}), | |
224 retcormethod = "${retcor.retcormethod}", | |
225 #if $retcor.retcormethod == "peakgroups" | |
226 smooth = "${retcor.smooth}", | |
227 missingratio = ${retcor.missingratio}, | |
228 extraratio = ${retcor.extraratio}, | |
229 retcorfamily = "${retcor.retcorfamily}", | |
230 #else | |
231 ##repeating the method as workaround/ backwards compatibility (can remove this one after fix from metaMS): | |
232 method = "${retcor.retcormethod}", | |
233 profStep = ${retcor.profStep}, | |
234 #end if | |
235 fillPeaks = ${fillPeaks}), | |
236 CAMERA = list( | |
237 perfwhm = ${perfwhm}, | |
238 cor_eic_th = ${cor_eic_th}, | |
239 ppm= ${ppm}, | |
240 graphMethod= "${groupCorr_graphMethod}", | |
241 pval= ${groupCorr_pval}, | |
242 calcCiS= ${groupCorr_calcCiS}, | |
243 calcIso= ${groupCorr_calcIso}, | |
244 calcCaS= ${groupCorr_calcCaS}, | |
245 maxcharge= ${findIsotopes_maxcharge}, | |
246 maxiso= ${findIsotopes_maxiso}, | |
247 minfrac= ${findIsotopes_minfrac}, | |
248 polarity= "${findAdducts_polarity}", | |
249 multiplier= ${findAdducts_multiplier} | |
250 ))</configfile> | |
251 | |
252 </configfiles> | |
253 | |
254 <outputs> | |
255 <data name="outputFile" format="tabular" label="${tool.name} on ${on_string} - peaks table (TSV)"/> | |
256 <data name="outputLog" format="txt" label="${tool.name} on ${on_string} - LOG" hidden="True"/> | |
257 <data name="xsetOut" format="rdata" label="${tool.name} on ${on_string} - xcmsSet (RDATA)"/> | |
258 <data name="htmlReportFile" format="html" label="${tool.name} on ${on_string} - report (HTML)"/> | |
259 </outputs> | |
260 <tests> | |
261 <test> | |
262 </test> | |
263 </tests> | |
264 <help> | |
265 | |
266 .. class:: infomark | |
267 | |
268 Runs metaMS process for LC/MS feature feature picking, aligning and grouping. | |
269 This part of the metaMS process makes use of the XCMS and CAMERA tools and algorithms. | |
270 CAMERA is used for automatic deconvolution/annotation of LC/ESI-MS data. | |
271 The figure below shows the main parts of the metaMS process. | |
272 | |
273 .. image:: $PATH_TO_IMAGES/metaMS.png | |
274 | |
275 | |
276 **References** | |
277 | |
278 If you use this Galaxy tool in work leading to a scientific publication please | |
279 cite the following papers: | |
280 | |
281 Wehrens, R.; Weingart, G.; Mattivi, F. (2014). | |
282 metaMS: an open-source pipeline for GC-MS-based untargeted metabolomics. | |
283 Journal of chromatography B: biomedical sciences and applications, 996 (1): 109-116. | |
284 doi: 10.1016/j.jchromb.2014.02.051 | |
285 handle: http://hdl.handle.net/10449/24012 | |
286 | |
287 Wrapper by Pieter Lukasse. | |
288 | |
289 | |
290 </help> | |
291 <citations> | |
292 <citation type="doi">10.1016/j.jchromb.2014.02.051</citation> <!-- example | |
293 see also https://wiki.galaxyproject.org/Admin/Tools/ToolConfigSyntax#A.3Ccitations.3E_tag_set | |
294 --> | |
295 </citations> | |
296 </tool> |