diff qiime2/qiime_sample-classifier_regress-samples.xml @ 29:3ba9833030c1 draft

Uploaded
author florianbegusch
date Fri, 04 Sep 2020 13:12:49 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_sample-classifier_regress-samples.xml	Fri Sep 04 13:12:49 2020 +0000
@@ -0,0 +1,227 @@
+<?xml version="1.0" ?>
+<tool id="qiime_sample-classifier_regress-samples" name="qiime sample-classifier regress-samples"
+      version="2020.8">
+  <description>Train and test a cross-validated supervised learning regressor.</description>
+  <requirements>
+    <requirement type="package" version="2020.8">qiime2</requirement>
+  </requirements>
+  <command><![CDATA[
+qiime sample-classifier regress-samples
+
+--i-table=$itable
+# if $input_files_mmetadatafile:
+  # def list_dict_to_string(list_dict):
+    # set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+    # for d in list_dict[1:]:
+      # set $file_list = $file_list + ' --m-metadata-file=' + d['additional_input'].__getattr__('file_name')
+    # end for
+    # return $file_list
+  # end def
+--m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+# end if
+
+#if '__ob__' in str($mmetadatacolumn):
+  #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('__ob__', '[')
+  #set $mmetadatacolumn = $mmetadatacolumn_temp
+#end if
+#if '__cb__' in str($mmetadatacolumn):
+  #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('__cb__', ']')
+  #set $mmetadatacolumn = $mmetadatacolumn_temp
+#end if
+#if 'X' in str($mmetadatacolumn):
+  #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('X', '\\')
+  #set $mmetadatacolumn = $mmetadatacolumn_temp
+#end if
+#if '__sq__' in str($mmetadatacolumn):
+  #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('__sq__', "'")
+  #set $mmetadatacolumn = $mmetadatacolumn_temp
+#end if
+#if '__db__' in str($mmetadatacolumn):
+  #set $mmetadatacolumn_temp = $mmetadatacolumn.replace('__db__', '"')
+  #set $mmetadatacolumn = $mmetadatacolumn_temp
+#end if
+
+--m-metadata-column=$mmetadatacolumn
+
+
+--p-test-size=$ptestsize
+
+--p-step=$pstep
+
+--p-cv=$pcv
+
+#if str($prandomstate):
+  --p-random-state=$prandomstate
+#end if
+--p-n-jobs=$pnjobs
+
+--p-n-estimators=$pnestimators
+
+#if str($pestimator) != 'None':
+--p-estimator=$pestimator
+#end if
+
+#if $poptimizefeatureselection:
+ --p-optimize-feature-selection
+#end if
+
+#if $pstratify:
+ --p-stratify
+#end if
+
+#if $pparametertuning:
+ --p-parameter-tuning
+#end if
+
+#if str($pmissingsamples) != 'None':
+--p-missing-samples=$pmissingsamples
+#end if
+
+--o-sample-estimator=osampleestimator
+
+--o-feature-importance=ofeatureimportance
+
+--o-predictions=opredictions
+
+--o-model-summary=omodelsummary
+
+--o-accuracy-results=oaccuracyresults
+
+#if str($examples) != 'None':
+--examples=$examples
+#end if
+
+;
+cp opredictions.qza $opredictions
+
+;
+qiime tools export  omodelsummary.qzv --output-path out
+&& mkdir -p '$omodelsummary.files_path'
+&& cp -r out/* '$omodelsummary.files_path'
+&& mv '$omodelsummary.files_path/index.html' '$omodelsummary'
+
+;
+qiime tools export  oaccuracyresults.qzv --output-path out
+&& mkdir -p '$oaccuracyresults.files_path'
+&& cp -r out/* '$oaccuracyresults.files_path'
+&& mv '$oaccuracyresults.files_path/index.html' '$oaccuracyresults'
+
+  ]]></command>
+  <inputs>
+    <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" />
+    <repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">
+      <param format="tabular,qza,no_unzip.zip" label="--m-metadata-file: METADATA" name="additional_input" optional="True" type="data" />
+    </repeat>
+    <param label="--m-metadata-column: COLUMN  MetadataColumn[Numeric] Numeric metadata column to use as prediction target. [required]" name="mmetadatacolumn" optional="False" type="text" />
+    <param exclude_min="True" label="--p-test-size: PROPORTION Range(0.0, 1.0, inclusive_start=False) Fraction of input samples to exclude from training set and use for classifier testing.          [default: 0.2]" max="1.0" min="0.0" name="ptestsize" optional="True" type="float" value="0.2" />
+    <param exclude_min="True" label="--p-step: PROPORTION Range(0.0, 1.0, inclusive_start=False) If optimize-feature-selection is True, step is the percentage of features to remove at each iteration. [default: 0.05]" max="1.0" min="0.0" name="pstep" optional="True" type="float" value="0.05" />
+    <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" />
+    <param label="--p-random-state: INTEGER Seed used by random number generator.        [optional]" name="prandomstate" optional="False" type="text" />
+    <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" />
+    <param label="--p-estimator: " name="pestimator" optional="True" type="select">
+      <option selected="True" value="None">Selection is Optional</option>
+      <option value="RandomForestRegressor">RandomForestRegressor</option>
+      <option value="ExtraTreesRegressor">ExtraTreesRegressor</option>
+      <option value="GradientBoostingRegressor">GradientBoostingRegressor</option>
+      <option value="AdaBoostRegressor">AdaBoostRegressor</option>
+      <option value="ElasticNet">ElasticNet</option>
+      <option value="Ridge">Ridge</option>
+      <option value="Lasso">Lasso</option>
+      <option value="KNeighborsRegressor">KNeighborsRegressor</option>
+      <option value="LinearSVR">LinearSVR</option>
+      <option value="SVR">SVR</option>
+    </param>
+    <param label="--p-optimize-feature-selection: --p-optimize-feature-selection: / --p-no-optimize-feature-selection Automatically optimize input feature selection using recursive feature elimination.         [default: False]" name="poptimizefeatureselection" selected="False" type="boolean" />
+    <param label="--p-stratify: --p-stratify: / --p-no-stratify Evenly stratify training and test data among metadata categories. If True, all values in column must match at least two samples.                     [default: False]" name="pstratify" selected="False" type="boolean" />
+    <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" />
+    <param label="--p-missing-samples: " name="pmissingsamples" optional="True" type="select">
+      <option selected="True" value="None">Selection is Optional</option>
+      <option value="error">error</option>
+      <option value="ignore">ignore</option>
+    </param>
+    <param label="--examples: Show usage examples and exit." name="examples" optional="False" type="data" />
+    
+  </inputs>
+
+  <outputs>
+    <data format="qza" label="${tool.name} on ${on_string}: sampleestimator.qza" name="osampleestimator" />
+    <data format="qza" label="${tool.name} on ${on_string}: featureimportance.qza" name="ofeatureimportance" />
+    <data format="qza" label="${tool.name} on ${on_string}: predictions.qza" name="opredictions" />
+    <data format="html" label="${tool.name} on ${on_string}: modelsummary.html" name="omodelsummary" />
+    <data format="html" label="${tool.name} on ${on_string}: accuracyresults.html" name="oaccuracyresults" />
+    
+  </outputs>
+
+  <help><![CDATA[
+Train and test a cross-validated supervised learning regressor.
+###############################################################
+
+Predicts a continuous sample metadata column using a supervised learning
+regressor. Splits input data into training and test sets. The training set
+is used to train and test the estimator using a stratified k-fold cross-
+validation scheme. This includes optional steps for automated feature
+extraction and hyperparameter optimization. The test set validates
+classification accuracy of the optimized estimator. Outputs classification
+results for test set. For more details on the learning algorithm, see
+http://scikit-learn.org/stable/supervised_learning.html
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    Feature table containing all features that should be used for target
+    prediction.
+metadata : MetadataColumn[Numeric]
+    Numeric metadata column to use as prediction target.
+test_size : Float % Range(0.0, 1.0, inclusive_start=False), optional
+    Fraction of input samples to exclude from training set and use for
+    classifier testing.
+step : Float % Range(0.0, 1.0, inclusive_start=False), optional
+    If optimize_feature_selection is True, step is the percentage of
+    features to remove at each iteration.
+cv : Int % Range(1, None), optional
+    Number of k-fold cross-validations to perform.
+random_state : Int, optional
+    Seed used by random number generator.
+n_jobs : Int, optional
+    Number of jobs to run in parallel.
+n_estimators : Int % Range(1, None), optional
+    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.
+estimator : Str % Choices('RandomForestRegressor', 'ExtraTreesRegressor', 'GradientBoostingRegressor', 'AdaBoostRegressor', 'ElasticNet', 'Ridge', 'Lasso', 'KNeighborsRegressor', 'LinearSVR', 'SVR'), optional
+    Estimator method to use for sample prediction.
+optimize_feature_selection : Bool, optional
+    Automatically optimize input feature selection using recursive feature
+    elimination.
+stratify : Bool, optional
+    Evenly stratify training and test data among metadata categories. If
+    True, all values in column must match at least two samples.
+parameter_tuning : Bool, optional
+    Automatically tune hyperparameters using random grid search.
+missing_samples : Str % Choices('error', 'ignore'), optional
+    How to handle missing samples in metadata. "error" will fail if missing
+    samples are detected. "ignore" will cause the feature table and
+    metadata to be filtered, so that only samples found in both files are
+    retained.
+
+Returns
+-------
+sample_estimator : SampleEstimator[Regressor]
+    Trained sample estimator.
+feature_importance : FeatureData[Importance]
+    Importance of each input feature to model accuracy.
+predictions : SampleData[RegressorPredictions]
+    Predicted target values for each input sample.
+model_summary : Visualization
+    Summarized parameter and (if enabled) feature selection information for
+    the trained estimator.
+accuracy_results : Visualization
+    Accuracy results visualization.
+  ]]></help>
+  <macros>
+    <import>qiime_citation.xml</import>
+  </macros>
+  <expand macro="qiime_citation"/>
+</tool>
\ No newline at end of file