view qiime2/qiime_sample-classifier_heatmap.xml @ 15:276ec629f09a draft

Uploaded
author florianbegusch
date Thu, 03 Sep 2020 09:56:05 +0000
parents a0a8d77a991c
children
line wrap: on
line source

<?xml version="1.0" ?>
<tool id="qiime_sample-classifier_heatmap" name="qiime sample-classifier heatmap"
      version="2020.8">
  <description>Generate heatmap of important features.</description>
  <requirements>
    <requirement type="package" version="2020.8">qiime2</requirement>
  </requirements>
  <command><![CDATA[
qiime sample-classifier heatmap

--i-table=$itable

--i-importance=$iimportance
# if $input_files_msamplemetadatafile:
  # 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-sample-metadata-file=' + d['additional_input'].__getattr__('file_name')
    # end for
    # return $file_list
  # end def
--m-sample-metadata-file=$list_dict_to_string($input_files_msamplemetadatafile)
# end if

#if '__ob__' in str($msamplemetadatacolumn):
  #set $msamplemetadatacolumn_temp = $msamplemetadatacolumn.replace('__ob__', '[')
  #set $msamplemetadatacolumn = $msamplemetadatacolumn_temp
#end if
#if '__cb__' in str($msamplemetadatacolumn):
  #set $msamplemetadatacolumn_temp = $msamplemetadatacolumn.replace('__cb__', ']')
  #set $msamplemetadatacolumn = $msamplemetadatacolumn_temp
#end if
#if 'X' in str($msamplemetadatacolumn):
  #set $msamplemetadatacolumn_temp = $msamplemetadatacolumn.replace('X', '\\')
  #set $msamplemetadatacolumn = $msamplemetadatacolumn_temp
#end if
#if '__sq__' in str($msamplemetadatacolumn):
  #set $msamplemetadatacolumn_temp = $msamplemetadatacolumn.replace('__sq__', "'")
  #set $msamplemetadatacolumn = $msamplemetadatacolumn_temp
#end if
#if '__db__' in str($msamplemetadatacolumn):
  #set $msamplemetadatacolumn_temp = $msamplemetadatacolumn.replace('__db__', '"')
  #set $msamplemetadatacolumn = $msamplemetadatacolumn_temp
#end if

#if str($msamplemetadatacolumn):
  --m-sample-metadata-column=$msamplemetadatacolumn
#end if
# if $input_files_mfeaturemetadatafile:
  # 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-feature-metadata-file=' + d['additional_input'].__getattr__('file_name')
    # end for
    # return $file_list
  # end def
--m-feature-metadata-file=$list_dict_to_string($input_files_mfeaturemetadatafile)
# end if

#if '__ob__' in str($mfeaturemetadatacolumn):
  #set $mfeaturemetadatacolumn_temp = $mfeaturemetadatacolumn.replace('__ob__', '[')
  #set $mfeaturemetadatacolumn = $mfeaturemetadatacolumn_temp
#end if
#if '__cb__' in str($mfeaturemetadatacolumn):
  #set $mfeaturemetadatacolumn_temp = $mfeaturemetadatacolumn.replace('__cb__', ']')
  #set $mfeaturemetadatacolumn = $mfeaturemetadatacolumn_temp
#end if
#if 'X' in str($mfeaturemetadatacolumn):
  #set $mfeaturemetadatacolumn_temp = $mfeaturemetadatacolumn.replace('X', '\\')
  #set $mfeaturemetadatacolumn = $mfeaturemetadatacolumn_temp
#end if
#if '__sq__' in str($mfeaturemetadatacolumn):
  #set $mfeaturemetadatacolumn_temp = $mfeaturemetadatacolumn.replace('__sq__', "'")
  #set $mfeaturemetadatacolumn = $mfeaturemetadatacolumn_temp
#end if
#if '__db__' in str($mfeaturemetadatacolumn):
  #set $mfeaturemetadatacolumn_temp = $mfeaturemetadatacolumn.replace('__db__', '"')
  #set $mfeaturemetadatacolumn = $mfeaturemetadatacolumn_temp
#end if

#if str($mfeaturemetadatacolumn):
  --m-feature-metadata-column=$mfeaturemetadatacolumn
#end if

--p-feature-count=$pfeaturecount

--p-importance-threshold=$pimportancethreshold

#if $pgroupsamples:
 --p-group-samples
#end if

#if $pnonormalize:
 --p-no-normalize
#end if

#if str($pmissingsamples) != 'None':
--p-missing-samples=$pmissingsamples
#end if

#if str($pmetric) != 'None':
--p-metric=$pmetric
#end if

#if str($pmethod) != 'None':
--p-method=$pmethod
#end if

#if str($pcluster) != 'None':
--p-cluster=$pcluster
#end if

#if str($pcolorscheme) != 'None':
--p-color-scheme=$pcolorscheme
#end if

--o-heatmap=oheatmap

--o-filtered-table=ofilteredtable

#if str($examples) != 'None':
--examples=$examples
#end if

;
cp ofilteredtable.qza $ofilteredtable

  ]]></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" />
    <param format="qza,no_unzip.zip" label="--i-importance: ARTIFACT FeatureData[Importance] Feature importances.                       [required]" name="iimportance" optional="False" type="data" />
    <repeat name="input_files_msamplemetadatafile" optional="True" title="--m-sample-metadata-file">
      <param format="tabular,qza,no_unzip.zip" label="--m-sample-metadata-file: METADATA" name="additional_input" optional="True" type="data" />
    </repeat>
    <param label="--m-sample-metadata-column: COLUMN  MetadataColumn[Categorical] Sample metadata column to use for sample labeling or grouping.                                  [optional]" name="msamplemetadatacolumn" optional="False" type="text" />
    <repeat name="input_files_mfeaturemetadatafile" optional="True" title="--m-feature-metadata-file">
      <param format="tabular,qza,no_unzip.zip" label="--m-feature-metadata-file: METADATA" name="additional_input" optional="True" type="data" />
    </repeat>
    <param label="--m-feature-metadata-column: COLUMN  MetadataColumn[Categorical] Feature metadata (e.g., taxonomy) to use for labeling features in the heatmap.          [optional]" name="mfeaturemetadatacolumn" optional="False" type="text" />
    <param label="--p-feature-count: INTEGER Range(0, None)       Filter feature table to include top N most important features. Set to zero to include all features. [default: 50]" min="0" name="pfeaturecount" optional="True" type="integer" value="50" />
    <param label="--p-importance-threshold: NUMBER Range(0, None)       Filter feature table to exclude any features with an importance score less than this threshold. Set to zero to include all features.            [default: 0]" min="0" name="pimportancethreshold" optional="True" type="integer" value="0" />
    <param label="--p-group-samples: --p-group-samples: / --p-no-group-samples Group samples by sample metadata.    [default: False]" name="pgroupsamples" selected="False" type="boolean" />
    <param label="--p-no-normalize: Do not normalize the feature table by adding a psuedocount of 1 and then taking the log10 of the table. [default: True]" name="pnonormalize" 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="--p-metric: " name="pmetric" optional="True" type="select">
      <option selected="True" value="None">Selection is Optional</option>
      <option value="euclidean">euclidean</option>
      <option value="cityblock">cityblock</option>
      <option value="matching">matching</option>
      <option value="russellrao">russellrao</option>
      <option value="sokalmichener">sokalmichener</option>
      <option value="kulsinski">kulsinski</option>
      <option value="chebyshev">chebyshev</option>
      <option value="hamming">hamming</option>
      <option value="dice">dice</option>
      <option value="yule">yule</option>
      <option value="rogerstanimoto">rogerstanimoto</option>
      <option value="braycurtis">braycurtis</option>
      <option value="cosine">cosine</option>
      <option value="minkowski">minkowski</option>
      <option value="correlation">correlation</option>
      <option value="sokalsneath">sokalsneath</option>
      <option value="seuclidean">seuclidean</option>
      <option value="canberra">canberra</option>
      <option value="mahalanobis">mahalanobis</option>
      <option value="jaccard">jaccard</option>
      <option value="sqeuclidean">sqeuclidean</option>
    </param>
    <param label="--p-method: " name="pmethod" optional="True" type="select">
      <option selected="True" value="None">Selection is Optional</option>
      <option value="centroid">centroid</option>
      <option value="median">median</option>
      <option value="weighted">weighted</option>
      <option value="average">average</option>
      <option value="single">single</option>
      <option value="complete">complete</option>
      <option value="ward">ward</option>
    </param>
    <param label="--p-cluster: " name="pcluster" optional="True" type="select">
      <option selected="True" value="None">Selection is Optional</option>
      <option value="both">both</option>
      <option value="none">none</option>
      <option value="features">features</option>
      <option value="samples">samples</option>
    </param>
    <param label="--p-color-scheme: " name="pcolorscheme" optional="True" type="select">
      <option selected="True" value="None">Selection is Optional</option>
      <option value="Spectral">Spectral</option>
      <option value="flag">flag</option>
      <option value="jet">jet</option>
      <option value="Vega20">Vega20</option>
      <option value="terrain">terrain</option>
      <option value="jet_r">jet_r</option>
      <option value="Vega20c_r">Vega20c_r</option>
      <option value="Oranges_r">Oranges_r</option>
      <option value="spectral">spectral</option>
      <option value="summer">summer</option>
      <option value="BuPu_r">BuPu_r</option>
      <option value="tab20b_r">tab20b_r</option>
      <option value="Pastel1">Pastel1</option>
      <option value="gnuplot_r">gnuplot_r</option>
      <option value="seismic">seismic</option>
      <option value="icefire">icefire</option>
      <option value="Set1">Set1</option>
      <option value="bwr">bwr</option>
      <option value="coolwarm_r">coolwarm_r</option>
      <option value="ocean_r">ocean_r</option>
      <option value="gist_gray_r">gist_gray_r</option>
      <option value="autumn">autumn</option>
      <option value="BrBG">BrBG</option>
      <option value="Pastel2">Pastel2</option>
      <option value="GnBu">GnBu</option>
      <option value="Vega20b_r">Vega20b_r</option>
      <option value="tab20c">tab20c</option>
      <option value="Paired">Paired</option>
      <option value="YlOrRd_r">YlOrRd_r</option>
      <option value="icefire_r">icefire_r</option>
      <option value="cubehelix_r">cubehelix_r</option>
      <option value="CMRmap_r">CMRmap_r</option>
      <option value="RdBu">RdBu</option>
      <option value="YlGn_r">YlGn_r</option>
      <option value="gray_r">gray_r</option>
      <option value="mako_r">mako_r</option>
      <option value="OrRd_r">OrRd_r</option>
      <option value="Vega10">Vega10</option>
      <option value="Set3">Set3</option>
      <option value="RdYlGn_r">RdYlGn_r</option>
      <option value="hsv">hsv</option>
      <option value="cool_r">cool_r</option>
      <option value="Spectral_r">Spectral_r</option>
      <option value="rainbow">rainbow</option>
      <option value="cividis">cividis</option>
      <option value="Blues_r">Blues_r</option>
      <option value="PuOr_r">PuOr_r</option>
      <option value="binary_r">binary_r</option>
      <option value="RdGy">RdGy</option>
      <option value="Pastel2_r">Pastel2_r</option>
      <option value="Pastel1_r">Pastel1_r</option>
      <option value="Dark2">Dark2</option>
      <option value="vlag">vlag</option>
      <option value="binary">binary</option>
      <option value="pink">pink</option>
      <option value="Purples">Purples</option>
      <option value="cividis_r">cividis_r</option>
      <option value="gray">gray</option>
      <option value="seismic_r">seismic_r</option>
      <option value="Greys">Greys</option>
      <option value="tab20">tab20</option>
      <option value="BuPu">BuPu</option>
      <option value="RdBu_r">RdBu_r</option>
      <option value="gnuplot2_r">gnuplot2_r</option>
      <option value="Accent_r">Accent_r</option>
      <option value="magma">magma</option>
      <option value="copper_r">copper_r</option>
      <option value="inferno">inferno</option>
      <option value="nipy_spectral_r">nipy_spectral_r</option>
      <option value="pink_r">pink_r</option>
      <option value="copper">copper</option>
      <option value="Dark2_r">Dark2_r</option>
      <option value="YlGnBu_r">YlGnBu_r</option>
      <option value="Wistia_r">Wistia_r</option>
      <option value="spectral_r">spectral_r</option>
      <option value="cubehelix">cubehelix</option>
      <option value="tab20_r">tab20_r</option>
      <option value="viridis">viridis</option>
      <option value="RdYlBu">RdYlBu</option>
      <option value="Blues">Blues</option>
      <option value="rocket_r">rocket_r</option>
      <option value="Set1_r">Set1_r</option>
      <option value="brg_r">brg_r</option>
      <option value="bone_r">bone_r</option>
      <option value="gist_ncar_r">gist_ncar_r</option>
      <option value="afmhot">afmhot</option>
      <option value="RdYlBu_r">RdYlBu_r</option>
      <option value="gist_earth_r">gist_earth_r</option>
      <option value="RdGy_r">RdGy_r</option>
      <option value="Vega10_r">Vega10_r</option>
      <option value="gist_rainbow_r">gist_rainbow_r</option>
      <option value="spring">spring</option>
      <option value="Set3_r">Set3_r</option>
      <option value="magma_r">magma_r</option>
      <option value="mako">mako</option>
      <option value="PuRd">PuRd</option>
      <option value="gnuplot2">gnuplot2</option>
      <option value="Paired_r">Paired_r</option>
      <option value="Vega20b">Vega20b</option>
      <option value="Accent">Accent</option>
      <option value="hsv_r">hsv_r</option>
      <option value="ocean">ocean</option>
      <option value="gist_earth">gist_earth</option>
      <option value="afmhot_r">afmhot_r</option>
      <option value="bone">bone</option>
      <option value="rocket">rocket</option>
      <option value="RdYlGn">RdYlGn</option>
      <option value="bwr_r">bwr_r</option>
      <option value="RdPu_r">RdPu_r</option>
      <option value="BuGn">BuGn</option>
      <option value="PuBu">PuBu</option>
      <option value="hot_r">hot_r</option>
      <option value="Vega20c">Vega20c</option>
      <option value="gist_yarg">gist_yarg</option>
      <option value="tab10">tab10</option>
      <option value="coolwarm">coolwarm</option>
      <option value="winter_r">winter_r</option>
      <option value="plasma_r">plasma_r</option>
      <option value="Wistia">Wistia</option>
      <option value="BuGn_r">BuGn_r</option>
      <option value="Set2">Set2</option>
      <option value="Vega20_r">Vega20_r</option>
      <option value="hot">hot</option>
      <option value="brg">brg</option>
      <option value="BrBG_r">BrBG_r</option>
      <option value="gist_heat">gist_heat</option>
      <option value="YlOrRd">YlOrRd</option>
      <option value="inferno_r">inferno_r</option>
      <option value="viridis_r">viridis_r</option>
      <option value="gist_stern_r">gist_stern_r</option>
      <option value="tab20c_r">tab20c_r</option>
      <option value="gist_gray">gist_gray</option>
      <option value="Reds_r">Reds_r</option>
      <option value="flag_r">flag_r</option>
      <option value="Purples_r">Purples_r</option>
      <option value="vlag_r">vlag_r</option>
      <option value="summer_r">summer_r</option>
      <option value="Greys_r">Greys_r</option>
      <option value="PRGn">PRGn</option>
      <option value="PiYG">PiYG</option>
      <option value="gist_ncar">gist_ncar</option>
      <option value="Oranges">Oranges</option>
      <option value="Reds">Reds</option>
      <option value="GnBu_r">GnBu_r</option>
      <option value="RdPu">RdPu</option>
      <option value="YlOrBr_r">YlOrBr_r</option>
      <option value="autumn_r">autumn_r</option>
      <option value="YlGn">YlGn</option>
      <option value="CMRmap">CMRmap</option>
      <option value="gnuplot">gnuplot</option>
      <option value="rainbow_r">rainbow_r</option>
      <option value="PiYG_r">PiYG_r</option>
      <option value="Greens">Greens</option>
      <option value="YlOrBr">YlOrBr</option>
      <option value="prism_r">prism_r</option>
      <option value="winter">winter</option>
      <option value="gist_yarg_r">gist_yarg_r</option>
      <option value="Set2_r">Set2_r</option>
      <option value="nipy_spectral">nipy_spectral</option>
      <option value="plasma">plasma</option>
      <option value="OrRd">OrRd</option>
      <option value="Greens_r">Greens_r</option>
      <option value="tab10_r">tab10_r</option>
      <option value="YlGnBu">YlGnBu</option>
      <option value="prism">prism</option>
      <option value="PRGn_r">PRGn_r</option>
      <option value="gist_heat_r">gist_heat_r</option>
      <option value="terrain_r">terrain_r</option>
      <option value="tab20b">tab20b</option>
      <option value="PuBuGn">PuBuGn</option>
      <option value="PuBu_r">PuBu_r</option>
      <option value="spring_r">spring_r</option>
      <option value="gist_rainbow">gist_rainbow</option>
      <option value="cool">cool</option>
      <option value="PuOr">PuOr</option>
      <option value="PuRd_r">PuRd_r</option>
      <option value="gist_stern">gist_stern</option>
      <option value="PuBuGn_r">PuBuGn_r</option>
    </param>
    <param label="--examples: Show usage examples and exit." name="examples" optional="False" type="data" />
    
  </inputs>

  <outputs>
    <data format="html" label="${tool.name} on ${on_string}: heatmap.html" name="oheatmap" />
    <data format="qza" label="${tool.name} on ${on_string}: filteredtable.qza" name="ofilteredtable" />
    
  </outputs>

  <help><![CDATA[
Generate heatmap of important features.
###############################################################

Generate a heatmap of important features. Features are filtered based on
importance scores; samples are optionally grouped by sample metadata; and a
heatmap is generated that displays (normalized) feature abundances per
sample.

Parameters
----------
table : FeatureTable[Frequency]
    Feature table containing all features that should be used for target
    prediction.
importance : FeatureData[Importance]
    Feature importances.
sample_metadata : MetadataColumn[Categorical], optional
    Sample metadata column to use for sample labeling or grouping.
feature_metadata : MetadataColumn[Categorical], optional
    Feature metadata (e.g., taxonomy) to use for labeling features in the
    heatmap.
feature_count : Int % Range(0, None), optional
    Filter feature table to include top N most important features. Set to
    zero to include all features.
importance_threshold : Float % Range(0, None), optional
    Filter feature table to exclude any features with an importance score
    less than this threshold. Set to zero to include all features.
group_samples : Bool, optional
    Group samples by sample metadata.
normalize : Bool, optional
    Normalize the feature table by adding a psuedocount of 1 and then
    taking the log10 of the table.
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.
metric : Str % Choices('yule', 'seuclidean', 'sokalmichener', 'sokalsneath', 'hamming', 'canberra', 'cityblock', 'russellrao', 'jaccard', 'braycurtis', 'minkowski', 'euclidean', 'kulsinski', 'cosine', 'sqeuclidean', 'correlation', 'dice', 'rogerstanimoto', 'mahalanobis', 'chebyshev', 'matching'), optional
    Metrics exposed by seaborn (see http://seaborn.pydata.org/generated/sea
    born.clustermap.html#seaborn.clustermap for more detail).
method : Str % Choices('complete', 'average', 'ward', 'median', 'weighted', 'centroid', 'single'), optional
    Clustering methods exposed by seaborn (see http://seaborn.pydata.org/ge
    nerated/seaborn.clustermap.html#seaborn.clustermap for more detail).
cluster : Str % Choices('both', 'features', 'none', 'samples'), optional
    Specify which axes to cluster.
color_scheme : Str % Choices('YlGn', 'flag', 'Greens_r', 'RdPu_r', 'OrRd', 'Set1_r', 'RdYlGn', 'inferno_r', 'Accent_r', 'bwr', 'PuOr', 'seismic_r', 'RdGy_r', 'tab20b_r', 'Oranges', 'spectral', 'RdYlGn_r', 'nipy_spectral_r', 'gist_gray', 'binary', 'gist_yarg_r', 'cubehelix', 'viridis_r', 'autumn', 'bone_r', 'terrain_r', 'RdPu', 'inferno', 'PRGn', 'YlGnBu', 'mako', 'gray', 'tab20_r', 'Oranges_r', 'gist_stern_r', 'Dark2_r', 'Purples_r', 'coolwarm', 'RdYlBu', 'tab10', 'copper_r', 'YlOrRd_r', 'gray_r', 'magma', 'Set3_r', 'BuGn', 'viridis', 'icefire_r', 'PuOr_r', 'YlOrBr', 'winter_r', 'hsv', 'gist_earth_r', 'rocket_r', 'Vega20b', 'autumn_r', 'gnuplot', 'Paired', 'PuRd_r', 'BrBG_r', 'plasma_r', 'Set2', 'prism', 'winter', 'seismic', 'RdGy', 'Blues_r', 'Reds_r', 'gist_ncar_r', 'Reds', 'afmhot', 'Greys', 'rainbow', 'tab10_r', 'GnBu_r', 'gnuplot2', 'pink', 'tab20b', 'BuGn_r', 'PuRd', 'gist_stern', 'magma_r', 'prism_r', 'tab20c_r', 'BuPu', 'cividis_r', 'BrBG', 'Wistia_r', 'gist_gray_r', 'ocean_r', 'summer_r', 'mako_r', 'CMRmap_r', 'cool_r', 'coolwarm_r', 'Greens', 'RdBu', 'icefire', 'spectral_r', 'Vega20', 'brg', 'Paired_r', 'BuPu_r', 'gist_rainbow', 'CMRmap', 'cool', 'gist_earth', 'bwr_r', 'rocket', 'YlGn_r', 'Vega20b_r', 'Wistia', 'Vega20c_r', 'Accent', 'plasma', 'Set1', 'PuBu_r', 'Purples', 'RdYlBu_r', 'brg_r', 'flag_r', 'Set3', 'hot_r', 'Blues', 'Pastel1_r', 'YlOrBr_r', 'hsv_r', 'Pastel2', 'Pastel1', 'bone', 'tab20', 'PuBuGn_r', 'terrain', 'gist_rainbow_r', 'Spectral_r', 'Pastel2_r', 'RdBu_r', 'summer', 'gist_ncar', 'OrRd_r', 'copper', 'tab20c', 'PuBuGn', 'Set2_r', 'vlag', 'jet_r', 'gist_heat_r', 'PRGn_r', 'Vega10', 'jet', 'Spectral', 'rainbow_r', 'binary_r', 'ocean', 'spring', 'Dark2', 'Vega20_r', 'vlag_r', 'PiYG', 'PuBu', 'YlGnBu_r', 'afmhot_r', 'nipy_spectral', 'gnuplot2_r', 'cividis', 'gnuplot_r', 'Greys_r', 'cubehelix_r', 'spring_r', 'PiYG_r', 'gist_yarg', 'gist_heat', 'Vega20c', 'GnBu', 'YlOrRd', 'hot', 'Vega10_r', 'pink_r'), optional
    Color scheme for heatmap.

Returns
-------
heatmap : Visualization
    Heatmap of important features.
filtered_table : FeatureTable[Frequency]
    Filtered feature table containing data displayed in heatmap.
  ]]></help>
  <macros>
    <import>qiime_citation.xml</import>
  </macros>
  <expand macro="qiime_citation"/>
</tool>