comparison micro_decon.xml @ 0:bd267e082f86 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/micro_decon/ commit bb37578aa61bf4a47af262e02baf0a1c1d9d02c6
author iuc
date Wed, 06 Aug 2025 08:38:24 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:bd267e082f86
1 <tool name="micro_decon" id="micro_decon" version="@TOOL_VERSION@+@VERSION_SUFFIX@" profile="24.2" license="@LICENSE@">
2 <description>removing contamination from metabarcoding</description>
3 <macros>
4 <import>macros.xml</import>
5 </macros>
6 <expand macro="requirements"/>
7 <expand macro="creators"/>
8 <command detect_errors="exit_code"><![CDATA[
9 Rscript '$__tool_directory__/decon.R'
10 --mode $function_cond.function_selector
11 --data_file '$input_table'
12 #set mode = $function_cond.function_selector
13 #if $mode != 'remove_thresh':
14 --numb_blanks '$function_cond.numb_blanks'
15 #end if
16
17 #if $mode != 'remove_cont'
18 --numb_ind 'c($function_cond.numb_ind)'
19 #end if
20
21 #if $mode in ['decon', 'remove_cont']:
22 --runs '$function_cond.runs'
23 --regression '$function_cond.regression'
24 --low_threshold '$function_cond.low_threshold'
25 --up_threshold '$function_cond.up_threshold'
26 #end if
27
28 #if $mode in ['decon', 'remove_thresh']:
29 --thresh '$function_cond.thresh'
30 --prop_thresh '$function_cond.prop_thresh'
31 #end if
32
33 #if $mode == 'decon_diff':
34 --output '$function_cond.output'
35 #end if
36 --taxa '$taxa'
37 ]]></command>
38 <inputs>
39 <param name="input_table" type="data" format="csv,tsv,tabular" label="Input table"/>
40 <param argument="--taxa" type="boolean" label="Does the input table contains taxonomy column?" value="true" truevalue="T" falsevalue="F"/>
41 <conditional name="function_cond">
42 <param name="function_selector" type="select" label="Select the microDecon function to apply">
43 <option value="decon">decon</option>
44 <option value="remove_cont">remove.cont</option>
45 <option value="remove_thresh">remove.thresh</option>
46 <option value="decon_diff">decon.diff</option>
47 </param>
48 <when value="decon">
49 <expand macro="numb_blanks_arg"/>
50 <expand macro="numb_ind_arg"/>
51 <expand macro="runs_and_regression_args"/>
52 <expand macro="thresh_args"/>
53 </when>
54 <when value="remove_cont">
55 <expand macro="numb_blanks_arg"/>
56 <expand macro="runs_and_regression_args"/>
57 </when>
58 <when value="remove_thresh">
59 <expand macro="numb_ind_arg"/>
60 <expand macro="thresh_args"/>
61 </when>
62 <when value="decon_diff">
63 <param argument="--output" type="data" label="The output table of remove.cont or remove.thresh" format="csv"/>
64 <expand macro="numb_blanks_arg"/>
65 <expand macro="numb_ind_arg"/>
66 </when>
67 </conditional>
68 </inputs>
69 <outputs>
70 <data name="decon_table" format="csv" label="${function_cond.function_selector} on ${on_string}: Decontaminated table" from_work_dir="decon_table.csv"/>
71 <data name="reads_removed" format="csv" label="${function_cond.function_selector} on ${on_string}: Reads removed" from_work_dir="reads_removed.csv">
72 <filter>function_cond['function_selector'] != "remove_cont" and function_cond['function_selector'] != "remove_thresh"</filter>
73 </data>
74 <data name="difference_sum" format="csv" label="${function_cond.function_selector} on ${on_string}: Difference sum" from_work_dir="difference_sum.csv">
75 <filter>function_cond['function_selector'] != "remove_cont" and function_cond['function_selector'] != "remove_thresh"</filter>
76 </data>
77 <data name="difference_mean" format="csv" label="${function_cond.function_selector} on ${on_string}: Difference mean" from_work_dir="difference_mean.csv">
78 <filter>function_cond['function_selector'] != "remove_cont" and function_cond['function_selector'] != "remove_thresh"</filter>
79 </data>
80 <data name="otus_removed" format="csv" label="${function_cond.function_selector} on ${on_string}: OTUs removed" from_work_dir="OTUs_removed.csv">
81 <filter>function_cond['function_selector'] != "remove_cont" and function_cond['function_selector'] != "remove_thresh"</filter>
82 </data>
83 </outputs>
84 <tests>
85 <test expect_num_outputs="5">
86 <param name="input_table" value="input.csv"/>
87 <param name="taxa" value="true"/>
88 <conditional name="function_cond">
89 <param name="function_selector" value="decon"/>
90 <param name="numb_ind" value="3,2"/>
91 </conditional>
92 <output name="decon_table" file="decon_table.csv"/>
93 <output name="reads_removed" file="reads_removed.csv"/>
94 <output name="difference_sum" file="difference_sum.csv"/>
95 <output name="difference_mean" file="difference_mean.csv"/>
96 <output name="otus_removed" file="otus_removed.csv"/>
97 </test>
98 <test expect_num_outputs="1">
99 <param name="input_table" value="input.csv"/>
100 <param name="taxa" value="true"/>
101 <conditional name="function_cond">
102 <param name="function_selector" value="remove_cont"/>
103 </conditional>
104 <output name="decon_table" file="remove_cont_decon_table.csv"/>
105 </test>
106 <test expect_num_outputs="1">
107 <param name="input_table" value="remove_cont_decon_table.csv"/>
108 <param name="taxa" value="true"/>
109 <conditional name="function_cond">
110 <param name="function_selector" value="remove_thresh"/>
111 <param name="numb_ind" value="3,2"/>
112 </conditional>
113 <output name="decon_table" file="remove_thresh_decon_table.csv"/>
114 </test>
115 <test expect_num_outputs="5">
116 <param name="input_table" value="input.csv"/>
117 <param name="taxa" value="true"/>
118 <conditional name="function_cond">
119 <param name="function_selector" value="decon_diff"/>
120 <param name="numb_ind" value="3,2"/>
121 <param name="output" value="remove_thresh_decon_table.csv"/>
122 </conditional>
123 <output name="decon_table" file="decon_table.csv"/>
124 <output name="reads_removed" file="reads_removed.csv"/>
125 <output name="difference_sum" file="difference_sum.csv"/>
126 <output name="difference_mean" file="difference_mean.csv"/>
127 <output name="otus_removed" file="otus_removed.csv"/>
128 </test>
129 </tests>
130 <help><![CDATA[
131 microDecon
132 ==========
133 The microDecon package is designed to remove contaminant reads from
134 metabarcoding studies (e.g., from bacterial contamination in reagents during a microbiome
135 study).
136
137 Input
138 ------
139 A table of metabarcoding data structured as a data
140 frame where each row is an OTU (or ASV or other metabarcoding output), each column is an
141 individual sample, and each cell contains the number of reads for a given OTU for a given
142 individual. Additionally, the first column should contain OTU IDs (these can be numeric or
143 characters), and the last column should (optionally) contain taxonomic information.
144
145 Functions
146 ---------
147 * **decon**: This is a wrapper function for all other microDecon functions. t first decontaminates the data using remove.cont(), then it runs remove.thresh(), then it runs decon.diff().
148 * **remove.cont**: This is the primary function for removing contamination. It outputs a single OTU table of decontaminated results (OTUs that were entirely contamination are still included as rows of 0s).
149 * **remove.thresh**: This function removes residual contamination in the output from remove.cont().
150 * **decon.diff**: This function takes the output of either remove.cont() or remove.thresh() as well your original, contaminated data, and it returns summary statistics of how many OTUs were removed.
151
152 Outputs
153 --------
154 * **Decontaminated table**: A table of decontaminated OTU data.
155 * **Reads removed**: An OTU table showing the number of removed reads form each OTU.
156 * **Difference sum**: The total number of removed reads from each OTU that amplified in the blank.
157 * **Difference mean**: The average number of removed reads from each OTU that amplified in the blank.
158 * **removed OTUs**: A table including the OTU identifiers which were completely removed from either particular groups or the entire data set.
159
160 For further information visit the complete `docs <https://github.com/donaldtmcknight/microDecon/blob/master/microDecon%20user's%20guide%201.0.2%20updated.pdf>`_
161
162 ]]></help>
163 <expand macro="citations"/>
164 </tool>