annotate qiime2-2020.8/qiime_sample-classifier_classify-samples-ncv.xml @ 0:5c352d975ef7 draft

Uploaded
author florianbegusch
date Thu, 03 Sep 2020 09:33:04 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
1 <?xml version="1.0" ?>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
2 <tool id="qiime_sample-classifier_classify-samples-ncv" name="qiime sample-classifier classify-samples-ncv"
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
3 version="2020.8">
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
4 <description>Nested cross-validated supervised learning classifier.</description>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
5 <requirements>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
6 <requirement type="package" version="2020.8">qiime2</requirement>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
7 </requirements>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
8 <command><![CDATA[
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
9 qiime sample-classifier classify-samples-ncv
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
10
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
11 --i-table=$itable
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
12 # if $input_files_mmetadatafile:
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
13 # def list_dict_to_string(list_dict):
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
14 # set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
15 # for d in list_dict[1:]:
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
16 # set $file_list = $file_list + ' --m-metadata-file=' + d['additional_input'].__getattr__('file_name')
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
17 # end for
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
18 # return $file_list
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
19 # end def
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
20 --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
21 # end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
22
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
23 #if '__ob__' in str($mmetadatacolumn):
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
24 #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('__ob__', '[')
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
25 #set $mmetadatacolumn = $mmetadatacolumn_temp
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
26 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
27 #if '__cb__' in str($mmetadatacolumn):
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
28 #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('__cb__', ']')
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
29 #set $mmetadatacolumn = $mmetadatacolumn_temp
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
30 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
31 #if 'X' in str($mmetadatacolumn):
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
32 #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('X', '\\')
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
33 #set $mmetadatacolumn = $mmetadatacolumn_temp
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
34 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
35 #if '__sq__' in str($mmetadatacolumn):
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
36 #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('__sq__', "'")
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
37 #set $mmetadatacolumn = $mmetadatacolumn_temp
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
38 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
39 #if '__db__' in str($mmetadatacolumn):
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
40 #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('__db__', '"')
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
41 #set $mmetadatacolumn = $mmetadatacolumn_temp
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
42 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
43
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
44 --m-metadata-column=$mmetadatacolumn
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
45
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
46
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
47 --p-cv=$pcv
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
48
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
49 #if str($prandomstate):
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
50 --p-random-state=$prandomstate
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
51 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
52 --p-n-jobs=$pnjobs
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
53
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
54 --p-n-estimators=$pnestimators
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
55
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
56 #if str($pestimator) != 'None':
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
57 --p-estimator=$pestimator
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
58 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
59
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
60 #if $pparametertuning:
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
61 --p-parameter-tuning
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
62 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
63
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
64 #if str($pmissingsamples) != 'None':
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
65 --p-missing-samples=$pmissingsamples
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
66 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
67
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
68 --o-predictions=opredictions
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
69
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
70 --o-feature-importance=ofeatureimportance
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
71
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
72 --o-probabilities=oprobabilities
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
73
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
74 #if str($examples) != 'None':
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
75 --examples=$examples
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
76 #end if
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
77
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
78 ;
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
79 cp oprobabilities.qza $oprobabilities
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
80
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
81 ]]></command>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
82 <inputs>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
83 <param format="qza,no_unzip.zip" label="--i-table: ARTIFACT FeatureTable[Frequency] Feature table containing all features that should be used for target prediction. [required]" name="itable" optional="False" type="data" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
84 <repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
85 <param format="tabular,qza,no_unzip.zip" label="--m-metadata-file: METADATA" name="additional_input" optional="True" type="data" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
86 </repeat>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
87 <param label="--m-metadata-column: COLUMN MetadataColumn[Categorical] Categorical metadata column to use as prediction target. [required]" name="mmetadatacolumn" optional="False" type="text" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
88 <param label="--p-cv: INTEGER Number of k-fold cross-validations to perform. Range(1, None) [default: 5]" min="1" name="pcv" optional="True" type="integer" value="5" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
89 <param label="--p-random-state: INTEGER Seed used by random number generator. [optional]" name="prandomstate" optional="False" type="text" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
90 <param label="--p-n-estimators: INTEGER Range(1, None) Number of trees to grow for estimation. More trees will improve predictive accuracy up to a threshold level, but will also increase time and memory requirements. This parameter only affects ensemble estimators, such as Random Forest, AdaBoost, ExtraTrees, and GradientBoosting. [default: 100]" min="1" name="pnestimators" optional="True" type="integer" value="100" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
91 <param label="--p-estimator: " name="pestimator" optional="True" type="select">
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
92 <option selected="True" value="None">Selection is Optional</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
93 <option value="RandomForestClassifier">RandomForestClassifier</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
94 <option value="ExtraTreesClassifier">ExtraTreesClassifier</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
95 <option value="GradientBoostingClassifier">GradientBoostingClassifier</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
96 <option value="AdaBoostClassifier">AdaBoostClassifier</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
97 <option value="KNeighborsClassifier">KNeighborsClassifier</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
98 <option value="LinearSVC">LinearSVC</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
99 <option value="SVC">SVC</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
100 </param>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
101 <param label="--p-parameter-tuning: --p-parameter-tuning: / --p-no-parameter-tuning Automatically tune hyperparameters using random grid search. [default: False]" name="pparametertuning" selected="False" type="boolean" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
102 <param label="--p-missing-samples: " name="pmissingsamples" optional="True" type="select">
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
103 <option selected="True" value="None">Selection is Optional</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
104 <option value="error">error</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
105 <option value="ignore">ignore</option>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
106 </param>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
107 <param label="--examples: Show usage examples and exit." name="examples" optional="False" type="data" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
108
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
109 </inputs>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
110
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
111 <outputs>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
112 <data format="qza" label="${tool.name} on ${on_string}: predictions.qza" name="opredictions" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
113 <data format="qza" label="${tool.name} on ${on_string}: featureimportance.qza" name="ofeatureimportance" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
114 <data format="qza" label="${tool.name} on ${on_string}: probabilities.qza" name="oprobabilities" />
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
115
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
116 </outputs>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
117
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
118 <help><![CDATA[
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
119 Nested cross-validated supervised learning classifier.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
120 ###############################################################
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
121
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
122 Predicts a categorical sample metadata column using a supervised learning
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
123 classifier. Uses nested stratified k-fold cross validation for automated
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
124 hyperparameter optimization and sample prediction. Outputs predicted values
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
125 for each input sample, and relative importance of each feature for model
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
126 accuracy.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
127
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
128 Parameters
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
129 ----------
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
130 table : FeatureTable[Frequency]
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
131 Feature table containing all features that should be used for target
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
132 prediction.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
133 metadata : MetadataColumn[Categorical]
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
134 Categorical metadata column to use as prediction target.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
135 cv : Int % Range(1, None), optional
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
136 Number of k-fold cross-validations to perform.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
137 random_state : Int, optional
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
138 Seed used by random number generator.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
139 n_jobs : Int, optional
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
140 Number of jobs to run in parallel.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
141 n_estimators : Int % Range(1, None), optional
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
142 Number of trees to grow for estimation. More trees will improve
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
143 predictive accuracy up to a threshold level, but will also increase
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
144 time and memory requirements. This parameter only affects ensemble
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
145 estimators, such as Random Forest, AdaBoost, ExtraTrees, and
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
146 GradientBoosting.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
147 estimator : Str % Choices('RandomForestClassifier', 'ExtraTreesClassifier', 'GradientBoostingClassifier', 'AdaBoostClassifier', 'KNeighborsClassifier', 'LinearSVC', 'SVC'), optional
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
148 Estimator method to use for sample prediction.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
149 parameter_tuning : Bool, optional
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
150 Automatically tune hyperparameters using random grid search.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
151 missing_samples : Str % Choices('error', 'ignore'), optional
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
152 How to handle missing samples in metadata. "error" will fail if missing
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
153 samples are detected. "ignore" will cause the feature table and
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
154 metadata to be filtered, so that only samples found in both files are
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
155 retained.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
156
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
157 Returns
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
158 -------
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
159 predictions : SampleData[ClassifierPredictions]
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
160 Predicted target values for each input sample.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
161 feature_importance : FeatureData[Importance]
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
162 Importance of each input feature to model accuracy.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
163 probabilities : SampleData[Probabilities]
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
164 Predicted class probabilities for each input sample.
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
165 ]]></help>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
166 <macros>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
167 <import>qiime_citation.xml</import>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
168 </macros>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
169 <expand macro="qiime_citation"/>
5c352d975ef7 Uploaded
florianbegusch
parents:
diff changeset
170 </tool>