comparison waveica.xml @ 2:d08deef1eb44 draft

"planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/waveica commit e33ef984e78721ed37d825c6672795a539a461e1"
author recetox
date Fri, 12 Nov 2021 09:14:04 +0000
parents 2bcfd5b450bb
children e3726251a055
comparison
equal deleted inserted replaced
1:2bcfd5b450bb 2:d08deef1eb44
1 <tool id="waveica" name="WaveICA" version="0.1.0+galaxy1" python_template_version="3.5"> 1 <tool id="waveica" name="WaveICA" version="0.1.0+galaxy2" python_template_version="3.5">
2 2
3 <description>removal of batch effects for untargeted metabolomics data</description> 3 <description>removal of batch effects for untargeted metabolomics data</description>
4 4
5 <requirements> 5 <requirements>
6 <container type="docker">recetox/waveica:0.1.0-recetox0</container> 6 <container type="docker">recetox/waveica:0.1.0-recetox0</container>
10 Rscript 10 Rscript
11 -e 'source("${__tool_directory__}/waveica_wrapper.R")' 11 -e 'source("${__tool_directory__}/waveica_wrapper.R")'
12 12
13 -e 'normalized_data <- waveica( 13 -e 'normalized_data <- waveica(
14 data = "$data", 14 data = "$data",
15 wavelet_filter = "$parameters.wf.wavelet_filter", 15 wavelet_filter = "$wf.wavelet_filter",
16 wavelet_length = "$parameters.wf.wavelet_length", 16 wavelet_length = "$wf.wavelet_length",
17 k = $parameters.k, 17 k = $k,
18 t = $parameters.t, 18 t = $t,
19 t2 = $parameters.t2, 19 t2 = $t2,
20 alpha = $parameters.alpha, 20 alpha = $alpha,
21 exclude_blanks = $optional_parameters.exclude_blanks 21 exclude_blanks = $exclude_blanks
22 )' 22 )'
23 23
24 -e 'store_data(normalized_data,"$normalized_features")' 24 -e 'store_data(normalized_data,"$normalized_data")'
25 ]]></command> 25 ]]></command>
26 26
27 <inputs> 27 <inputs>
28 <param type="data" name="data" label="Sample-by-matrix data" format="csv" help=""/> 28 <param type="data" name="data" label="Feature table" format="csv" help=""/>
29 <section name="parameters" title="Normalization Parameters" expanded="True"> 29 <conditional name="wf">
30 <conditional name="wf"> 30 <param type="select" name="wavelet_filter" label="Wavelet transform filter" help="wavelet function and filter length [1] (see footnotes for more details)">
31 <param type="select" name="wavelet_filter" label="Wavelet transform filter" help="selecting wavelet function and filter length"> 31 <option value="d" selected="True">Daubechies</option>
32 <option value="d" selected="True">Daubechies</option> 32 <option value="la" >Least Asymetric</option>
33 <option value="la" >Least Asymetric</option> 33 <option value="bl" >Best Localized</option>
34 <option value="bl" >Best Localized</option> 34 <option value="c" >Coiflet</option>
35 <option value="c" >Coiflet</option> 35 </param>
36 <when value="d">
37 <param name="wavelet_length" type="select" label="filter length">
38 <option value="2" selected="True">2</option>
39 <option value="4">4</option>
40 <option value="6">6</option>
41 <option value="8">8</option>
42 <option value="10">10</option>
43 <option value="12">12</option>
44 <option value="14">14</option>
45 <option value="16">16</option>
46 <option value="18">18</option>
47 <option value="20">20</option>
36 </param> 48 </param>
37 <when value="d"> 49 </when>
38 <param name="wavelet_length" type="select" label="filter length"> 50 <when value="la">
39 <option value="2" selected="True">2</option> 51 <param name="wavelet_length" type="select" label="filter length">
40 <option value="4">4</option> 52 <option value="8">8</option>
41 <option value="6">6</option> 53 <option value="10">10</option>
42 <option value="8">8</option> 54 <option value="12">12</option>
43 <option value="10">10</option> 55 <option value="14">14</option>
44 <option value="12">12</option> 56 <option value="16">16</option>
45 <option value="14">14</option> 57 <option value="18">18</option>
46 <option value="16">16</option> 58 <option value="20">20</option>
47 <option value="18">18</option> 59 </param>
48 <option value="20">20</option> 60 </when>
49 </param> 61 <when value="bl">
50 </when> 62 <param name="wavelet_length" type="select" label="filter length">
51 <when value="la"> 63 <option value="14">14</option>
52 <param name="wavelet_length" type="select" label="filter length"> 64 <option value="18">18</option>
53 <option value="8">8</option> 65 <option value="20">20</option>
54 <option value="10">10</option> 66 </param>
55 <option value="12">12</option> 67 </when>
56 <option value="14">14</option> 68 <when value="c">
57 <option value="16">16</option> 69 <param name="wavelet_length" type="select" label="filter length">
58 <option value="18">18</option> 70 <option value="6">6</option>
59 <option value="20">20</option> 71 <option value="12">12</option>
60 </param> 72 <option value="18">18</option>
61 </when> 73 <option value="24">24</option>
62 <when value="bl"> 74 <option value="30">30</option>
63 <param name="wavelet_length" type="select" label="filter length"> 75 </param>
64 <option value="14">14</option> 76 </when>
65 <option value="18">18</option> 77 </conditional>
66 <option value="20">20</option> 78 <param type="integer" value="20" name="k" label="Number of components to decompose" help="maximal component that ICA decomposes"/>
67 </param> 79 <param type="float" value="0.05" name="t" label="Batch-association threshold" help="threshold to consider a component associate with the batch,
68 </when>
69 <when value="c">
70 <param name="wavelet_length" type="select" label="filter length">
71 <option value="6">6</option>
72 <option value="12">12</option>
73 <option value="18">18</option>
74 <option value="24">24</option>
75 <option value="30">30</option>
76 </param>
77 </when>
78 </conditional>
79 <param type="integer" value="20" name="k" label="Number of components to decompose" help="the maximal component that ICA decomposes"/>
80 <param type="float" value="0.05" name="t" label="Batch-assosiation threshold" help="the threshold to consider a component associate with the batch,
81 should be between 0 and 1"/> 80 should be between 0 and 1"/>
82 <param type="float" value="0.05" name="t2" label="Group-assosiation threshold" help="the threshold to consider a component associate with the group, 81 <param type="float" value="0.05" name="t2" label="Group-association threshold" help="threshold to consider a component associate with the group,
83 should be between 0 and 1"/> 82 should be between 0 and 1"/>
84 <param type="float" value="0" name="alpha" label="Alpha" help="the trade-off value between the independence of samples and those of variables and should be between 0 and 1"/> 83 <param type="float" value="0" name="alpha" label="Alpha" help="trade-off value between the independence of samples (temporal ICA) and variables (spatial ICA), should be between 0 and 1"/>
85 </section> 84 <param name="exclude_blanks" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="Remove blanks" help="Excludes blank samples from the output" />
86 <section name="optional_parameters" expanded="true" title="Optional Parameters">
87 <param name="exclude_blanks" type="boolean" checked="true" truevalue="TRUE" falsevalue="FALSE" label="Remove blanks" help="Excludes blank samples from the output" />
88 </section>
89 </inputs> 85 </inputs>
90 86
91 <outputs> 87 <outputs>
92 <data name="normalized_features" format="tsv" /> 88 <data name="normalized_data" format="tsv" />
93 </outputs> 89 </outputs>
94 90
95 <tests> 91 <tests>
96 <test> 92 <test>
97 <param name="data" value="features-test.csv" ftype="csv" /> 93 <param name="data" value="input_data.csv" ftype="csv" />
98 <param name="wavelet_filter" value="d" /> 94 <param name="wavelet_filter" value="d" />
99 <param name="filter_length" value="2" /> 95 <param name="filter_length" value="2" />
100 <param name="k" value="20" /> 96 <param name="k" value="20" />
101 <param name="t" value="0.05" /> 97 <param name="t" value="0.05" />
102 <param name="t2" value="0.05" /> 98 <param name="t2" value="0.05" />
103 <param name="alpha" value="0" /> 99 <param name="alpha" value="0" />
104 <output name="normalized_features" file="features-normalized.tsv" /> 100 <output name="normalized_data" file="normalized_data.tsv" />
101 </test>
102 <test expect_failure="true">
103 <param name="data" value="na_data.csv" ftype="csv" />
104 </test>
105 <test expect_failure="true">
106 <param name="data" value="incomplete_metadata_data.csv" ftype="csv" />
105 </test> 107 </test>
106 </tests> 108 </tests>
107 109
108 <help><![CDATA[ 110 <help><![CDATA[
109 **Description** 111 **Description**
110 112
111 Removal of batch effects for large-scale untargeted metabolomics data based on wavelet analysis. The WaveICA R package provides a new algorithm to removing batch effects for metabolomics data. 113 Removal of batch effects for large-scale untargeted metabolomics data based on wavelet analysis. The WaveICA R package provides a new algorithm to removing batch effects for metabolomics data.
112 114
113 The input is Sample-by-matrix table which must include: 115 The input is an intensity-by-feature table with metadata in the following format:
114 116
115 1. Injection order of samples 117 +---------------+--------+------------+----------------+-------+------------+--------------+-------------+-------------+-----+
118 | sampleName | class | sampleType | injectionOrder | batch | M85T34 | M86T41 | M86T518 | M86T539 | ... |
119 +===============+========+============+================+=======+============+==============+=============+=============+=====+
120 | VT_160120_002 | sample | sample | 1 | 1 | 228520.064 | 35646729.215 | 2386896.979 | 1026645.836 | ... |
121 +---------------+--------+------------+----------------+-------+------------+--------------+-------------+-------------+-----+
122 | QC1 | sample | QC | 2 | 1 | 90217.384 | 35735702.457 | 2456290.696 | 1089246.460 | ... |
123 +---------------+--------+------------+----------------+-------+------------+--------------+-------------+-------------+-----+
124 | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
125 +---------------+--------+------------+----------------+-------+------------+--------------+-------------+-------------+-----+
116 126
117 2. Types of the samples denoted as "blank", "sample" or "QC"
118 127
119 3. Batch numbers 128 + the input table must not contain missing values. Missing intensities must be filled with 0.
129 + **sampleType** column accepts three possible values: [QC, sample, blank] (case insensitive).
130 + **class** column is used to denote a biological group of a sample (e.g., positive/negative species). The column accepts any values.
131 + the **output** is the same table with corrected feature intensities.
120 132
121 4. Features data 133 .. rubric:: **Footnotes**
122 134 .. [1] for details on wavelet filter parameters refer to R `wavelets::wt.filter <https://www.rdocumentation.org/packages/wavelets/versions/0.3-0.2/topics/wt.filter>`_;
123 **Documentation**
124
125 See original repository for further information: https://github.com/dengkuistat/WaveICA
126 135
127 ]]></help> 136 ]]></help>
128 137
129 <citations> 138 <citations>
130 <citation type="doi">10.1016/j.aca.2019.02.010</citation> 139 <citation type="doi">10.1016/j.aca.2019.02.010</citation>