view qiime2__longitudinal__maturity_index.xml @ 3:915a49001f9b draft default tip

planemo upload for repository https://github.com/qiime2/galaxy-tools/tree/main/tools/suite_qiime2__longitudinal commit 389df0134cd0763dcf02aac6e623fc15f8861c1e
author q2d2
date Thu, 25 Apr 2024 21:15:33 +0000
parents 65eb20bd61f1
children
line wrap: on
line source

<?xml version='1.0' encoding='utf-8'?>
<!--
Copyright (c) 2024, QIIME 2 development team.

Distributed under the terms of the Modified BSD License. (SPDX: BSD-3-Clause)
-->
<!--
This tool was automatically generated by:
    q2galaxy (version: 2024.2.1)
for:
    qiime2 (version: 2024.2.0)
-->
<tool name="qiime2 longitudinal maturity-index" id="qiime2__longitudinal__maturity_index" version="2024.2.0+q2galaxy.2024.2.1" profile="22.05" license="BSD-3-Clause">
    <description>Microbial maturity index prediction.</description>
    <requirements>
        <container type="docker">quay.io/qiime2/amplicon:2024.2</container>
    </requirements>
    <version_command>q2galaxy version longitudinal</version_command>
    <command detect_errors="exit_code">q2galaxy run longitudinal maturity_index '$inputs'</command>
    <configfiles>
        <inputs name="inputs" data_style="staging_path_and_source_path"/>
    </configfiles>
    <inputs>
        <param name="table" type="data" format="qza" label="table: FeatureTable[Frequency]" help="[required]  Feature table containing all features that should be used for target prediction.">
            <options options_filter_attribute="metadata.semantic_type">
                <filter type="add_value" value="FeatureTable[Frequency]"/>
            </options>
            <validator type="expression" message="Incompatible type">hasattr(value.metadata, "semantic_type") and value.metadata.semantic_type in ['FeatureTable[Frequency]']</validator>
        </param>
        <repeat name="metadata" min="1" help="[required]" title="metadata: Metadata">
            <conditional name="__q2galaxy__GUI__conditional__metadata__">
                <param name="type" type="select" label="metadata: Metadata">
                    <option value="tsv" selected="true">Metadata from TSV</option>
                    <option value="qza">Metadata from Artifact</option>
                </param>
                <when value="tsv">
                    <param name="source" type="data" format="tabular,qiime2.tabular" label="Metadata Source"/>
                </when>
                <when value="qza">
                    <param name="source" type="data" format="qza" label="Metadata Source"/>
                </when>
            </conditional>
        </repeat>
        <param name="state_column" type="text" label="state_column: Str" help="[required]  Numeric metadata column containing sampling time (state) data to use as prediction target.">
            <sanitizer>
                <valid initial="string.printable"/>
            </sanitizer>
            <validator type="expression" message="Please verify this parameter.">value is not None and len(value) &gt; 0</validator>
        </param>
        <param name="group_by" type="text" label="group_by: Str" help="[required]  Categorical metadata column to use for plotting and significance testing between main treatment groups.">
            <sanitizer>
                <valid initial="string.printable"/>
            </sanitizer>
            <validator type="expression" message="Please verify this parameter.">value is not None and len(value) &gt; 0</validator>
        </param>
        <param name="control" type="text" label="control: Str" help="[required]  Value of group_by to use as control group. The regression model will be trained using only control group data, and the maturity scores of other groups consequently will be assessed relative to this group.">
            <sanitizer>
                <valid initial="string.printable"/>
            </sanitizer>
            <validator type="expression" message="Please verify this parameter.">value is not None and len(value) &gt; 0</validator>
        </param>
        <section name="__q2galaxy__GUI__section__extra_opts__" title="Click here for additional options">
            <conditional name="__q2galaxy__GUI__conditional__individual_id_column__" label="individual_id_column: Str">
                <param name="__q2galaxy__GUI__select__" type="select" label="individual_id_column: Str" help="[optional]  Optional metadata column containing IDs for individual subjects. Adds individual subject (spaghetti) vectors to volatility charts if a column name is provided.">
                    <option value="__q2galaxy__::control::default" selected="true">None (Use default behavior)</option>
                    <option value="__q2galaxy__::control::provide">Provide a value</option>
                </param>
                <when value="__q2galaxy__::control::default">
                    <param name="individual_id_column" type="hidden" value="__q2galaxy__::literal::None"/>
                </when>
                <when value="__q2galaxy__::control::provide">
                    <param name="individual_id_column" type="text">
                        <sanitizer>
                            <valid initial="string.printable"/>
                        </sanitizer>
                    </param>
                </when>
            </conditional>
            <param name="estimator" type="select" label="estimator: Str % Choices('RandomForestRegressor', 'ExtraTreesRegressor', 'GradientBoostingRegressor', 'AdaBoostRegressor[DecisionTree]', 'AdaBoostRegressor[ExtraTrees]', 'ElasticNet', 'Ridge', 'Lasso', 'KNeighborsRegressor', 'LinearSVR', 'SVR')">
                <option value="RandomForestRegressor" selected="true">RandomForestRegressor</option>
                <option value="ExtraTreesRegressor">ExtraTreesRegressor</option>
                <option value="GradientBoostingRegressor">GradientBoostingRegressor</option>
                <option value="AdaBoostRegressor__ob__DecisionTree__cb__">AdaBoostRegressor[DecisionTree]</option>
                <option value="AdaBoostRegressor__ob__ExtraTrees__cb__">AdaBoostRegressor[ExtraTrees]</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 name="n_estimators" type="integer" min="1" value="100" label="n_estimators: Int % Range(1, None)" help="[default: 100]  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."/>
            <param name="test_size" type="float" min="0.0" max="0.999999" value="0.5" label="test_size: Float % Range(0.0, 1.0)" help="[default: 0.5]  Fraction of input samples to exclude from training set and use for classifier testing."/>
            <param name="step" type="float" min="1e-06" max="0.999999" value="0.05" label="step: Float % Range(0.0, 1.0, inclusive_start=False)" help="[default: 0.05]  If optimize_feature_selection is True, step is the percentage of features to remove at each iteration."/>
            <param name="cv" type="integer" min="1" value="5" label="cv: Int % Range(1, None)" help="[default: 5]  Number of k-fold cross-validations to perform."/>
            <param name="random_state" type="integer" optional="true" label="random_state: Int" help="[optional]  Seed used by random number generator."/>
            <param name="parameter_tuning" type="boolean" truevalue="__q2galaxy__::literal::True" falsevalue="__q2galaxy__::literal::False" label="parameter_tuning: Bool" help="[default: No]  Automatically tune hyperparameters using random grid search."/>
            <param name="optimize_feature_selection" type="boolean" truevalue="__q2galaxy__::literal::True" falsevalue="__q2galaxy__::literal::False" label="optimize_feature_selection: Bool" help="[default: No]  Automatically optimize input feature selection using recursive feature elimination."/>
            <param name="stratify" type="boolean" truevalue="__q2galaxy__::literal::True" falsevalue="__q2galaxy__::literal::False" label="stratify: Bool" help="[default: No]  Evenly stratify training and test data among metadata categories. If True, all values in column must match at least two samples."/>
            <param name="missing_samples" type="select" label="missing_samples: Str % Choices('error', 'ignore')" display="radio">
                <option value="error" selected="true">error</option>
                <option value="ignore">ignore</option>
            </param>
            <param name="feature_count" type="integer" min="0" value="50" label="feature_count: Int % Range(0, None)" help="[default: 50]  Filter feature table to include top N most important features. Set to zero to include all features."/>
        </section>
    </inputs>
    <outputs>
        <data name="sample_estimator" format="qza" label="${tool.name} on ${on_string}: sample_estimator.qza" from_work_dir="sample_estimator.qza"/>
        <data name="feature_importance" format="qza" label="${tool.name} on ${on_string}: feature_importance.qza" from_work_dir="feature_importance.qza"/>
        <data name="predictions" format="qza" label="${tool.name} on ${on_string}: predictions.qza" from_work_dir="predictions.qza"/>
        <data name="model_summary" format="qzv" label="${tool.name} on ${on_string}: model_summary.qzv" from_work_dir="model_summary.qzv"/>
        <data name="accuracy_results" format="qzv" label="${tool.name} on ${on_string}: accuracy_results.qzv" from_work_dir="accuracy_results.qzv"/>
        <data name="maz_scores" format="qza" label="${tool.name} on ${on_string}: maz_scores.qza" from_work_dir="maz_scores.qza"/>
        <data name="clustermap" format="qzv" label="${tool.name} on ${on_string}: clustermap.qzv" from_work_dir="clustermap.qzv"/>
        <data name="volatility_plots" format="qzv" label="${tool.name} on ${on_string}: volatility_plots.qzv" from_work_dir="volatility_plots.qzv"/>
    </outputs>
    <tests/>
    <help>
QIIME 2: longitudinal maturity-index
====================================
Microbial maturity index prediction.


Outputs:
--------
:sample_estimator.qza: Trained sample estimator.
:feature_importance.qza: Importance of each input feature to model accuracy.
:predictions.qza: Predicted target values for each input sample.
:model_summary.qzv: Summarized parameter and (if enabled) feature selection information for the trained estimator.
:accuracy_results.qzv: Accuracy results visualization.
:maz_scores.qza: Microbiota-for-age z-score predictions.
:clustermap.qzv: Heatmap of important feature abundance at each time point in each group.
:volatility_plots.qzv: Interactive volatility plots of MAZ and maturity scores, target (column) predictions, and the sample metadata.

|  

Description:
------------
Calculates a "microbial maturity" index from a regression model trained on feature data to predict a given continuous metadata column, e.g., to predict age as a function of microbiota composition. The model is trained on a subset of control group samples, then predicts the column value for all samples. This visualization computes maturity index z-scores to compare relative "maturity" between each group, as described in doi:10.1038/nature13421. This method can be used to predict between-group differences in relative trajectory across any type of continuous metadata gradient, e.g., intestinal microbiome development by age, microbial succession during wine fermentation, or microbial community differences along environmental gradients, as a function of two or more different "treatment" groups.


|  

</help>
    <citations>
        <citation type="doi">10.1038/nature13421</citation>
        <citation type="doi">10.21105/joss.00934</citation>
        <citation type="doi">10.1128/mSystems.00219-18</citation>
        <citation type="doi">10.1038/s41587-019-0209-9</citation>
    </citations>
</tool>