diff w4mcorcov.xml @ 0:50a07adddfbd draft

planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 52e588e19fe93d83d221710bb75559c5700ba637
author eschen42
date Mon, 09 Oct 2017 15:46:13 -0400
parents
children e25fd8a13665
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/w4mcorcov.xml	Mon Oct 09 15:46:13 2017 -0400
@@ -0,0 +1,513 @@
+<tool id="w4mcorcov" name="OPLS-DA_Contrasts" version="0.98.1">
+
+  <description>OPLS-DA Contrasts of Univariate Results</description>
+  
+  <requirements>
+    <requirement type="package">r-batch</requirement>
+    <requirement type="package">bioconductor-ropls</requirement>
+    <!-- <requirement type="package">r-foreach</requirement> -->
+  </requirements>
+  
+  <stdio>
+    <exit_code range="1:" level="fatal" />
+  </stdio>
+
+  <command><![CDATA[
+  cd $__tool_directory__; Rscript w4mcorcov_wrapper.R
+  dataMatrix_in "$dataMatrix_in"
+  sampleMetadata_in "$sampleMetadata_in"
+  variableMetadata_in "$variableMetadata_in"
+  tesC "$tesC"
+  facC "$facC"
+  pairSigFeatOnly "$pairSigFeatOnly"
+  levCSV '$levCSV'
+  matchingC '$matchingC'
+  labelFeatures '$labelFeatures'
+  contrast_detail '$contrast_detail'
+  contrast_corcov '$contrast_corcov'
+  ]]></command>
+
+  <inputs>
+    <param name="dataMatrix_in" label="Data matrix file" type="data" format="tabular" help="variable x sample, decimal: '.', missing: NA, mode: numerical, sep: tabular" />
+    <param name="sampleMetadata_in" label="Sample metadata file" type="data" format="tabular" help="sample x metadata, decimal: '.', missing: NA, mode: character and numerical, sep: tabular" />
+    <param name="variableMetadata_in" label="Variable metadata file (from Univariate)" type="data" format="tabular" help="variable x metadata, decimal: '.', missing: NA, mode: character and numerical, sep: tabular" />
+    <param name="facC" label="Factor of interest" type="text" help="Name of the column of the sample metadata table corresponding to the qualitative variable used to define the contrasts - it is a portion of the column names in the variable metadata file"/>
+    <param name="tesC" label="Univariate Significance-Test" type="select" help="Name of the statistical test that was run in Univariate to produce the variable metadata file - it is a portion of the column names in that file">
+      <option value="none">none - Display all features from variableMetadata (rather than choosing a subset based on significance in univariate testing)</option>
+      <option value="ttest">ttest - Student's t-test (parametric test, qualitative factor with exactly 2 levels)</option>
+      <option value="anova">anova - Analysis of variance (parametric test, qualitative factor with more than 2 levels)</option>
+      <option value="wilcoxon">wilcoxon - Wilcoxon rank test (nonparametric test, qualitative factor with exactly 2 levels)</option>      
+      <option value="kruskal">kruskal - Kruskal-Wallis rank test (nonparametric test, qualitative factor with more than 2 levels)</option>
+    </param>
+    <param
+      name="pairSigFeatOnly"
+      type="boolean"
+      checked="true"
+      truevalue="TRUE"
+      falsevalue="FALSE"
+      label="Retain only pairwise-significant features"
+      help="Ignored when 'none' is chosen.  Otherwise, when 'Yes', analyze only features that differ significantly for the pair of levels being contrasted; when 'No', include any feature that varies significantly across all levels."/>
+    <param name="levCSV" label="Levels of interest" type="text" value = "" help="comma-separated level-names (or comma-less regular expressions to match level-names) to consider in analysis; must match at least two levels; may include wild cards or regular expressions">
+      <sanitizer>
+        <valid initial="string.letters">
+          <add preset="string.digits"/>
+          <add value="&#36;"  /> <!-- $ dollar, dollar-sign -->
+          <add value="&#40;"  /> <!-- ( left-paren -->
+          <add value="&#41;"  /> <!-- ) right-paren -->
+          <add value="&#42;"  /> <!-- * splat, asterisk -->
+          <add value="&#43;"  /> <!-- + plus -->
+          <add value="&#44;"  /> <!-- , comma -->
+          <add value="&#45;"  /> <!-- - dash, minus-sign -->
+          <add value="&#46;"  /> <!-- . dot, period -->
+          <add value="&#58;"  /> <!-- : colon -->
+          <add value="&#59;"  /> <!-- ; semi, semicolon -->
+          <add value="&#63;"  /> <!-- ? what, question mark -->
+          <add value="&#91;"  /> <!-- [ l-squib, left-squre-bracket -->
+          <add value="&#92;"  /> <!-- \ whack, backslash -->
+          <add value="&#93;"  /> <!-- ] r-squib, right-squre-bracket -->
+          <add value="&#94;"  /> <!-- ^ hat, caret -->
+          <add value="&#123;" /> <!-- { l-cube, left-curly-bracket -->
+          <add value="&#124;" /> <!-- | pipe -->
+          <add value="&#125;" /> <!-- } r-cube, right-curly-bracket -->
+          <!-- IMPORTANT - Note that single and double quotes are not part of this list; they have the potential to make the 'command' section insecure or broken. -->
+        </valid>
+      </sanitizer>
+    </param>
+    <param name="matchingC" label="Level-name matching" type="select" help="how to specify levels generically">
+      <option value="none"  selected="true">do no generic matching (default)</option>
+      <option value="wildcard">use wild-cards for matching level-names</option>
+      <option value="regex">use regular expressions for matching level-names</option>
+    </param>
+    <param name="labelFeatures" type="boolean" checked="true" truevalue="TRUE" falsevalue="FALSE" label="Label features on detail plot" help="When true, add feature labels to points on the covariance-versus-correlation plot."/>
+  </inputs>
+
+  <outputs>
+    <!--
+      pdf1: summaries of each contrasts, clearly labeled by level=pair name
+        * first PCA score-plot
+        * then PLS score-plot
+        * then PLS S-PLOT; color in red features with VIP > 1; color in grey any non-pairwise-significant features, if these are included
+    -->
+    <data name="contrast_detail" label="${tool.name}_${variableMetadata_in.name}_detail" format="pdf" />
+    <!--
+      tsv1: cor and cov table with columns:
+        * feature-ID
+        * factor-level 1
+        * factor-level 2, lexically greater than level 1
+        * Wiklund_2008 correlation
+        * Wiklund_2008 covariance
+        * Galindo_Prieto_2014 VIP for predictive components, VIP[4,p]
+        * Galindo_Prieto_2014 VIP for orthogonal components, VIP[4,o]
+        * Salient level, i.e., for the feature, the class-level having the greatest median intensity
+        * Salient robust coefficient of variation, i.e., for the feature, the mean absolute deviation of the intensity for the salient level divided by the median intensity for the salient level
+        * Salience, i.e., for the feature, the median of the class-level having the greatest intensity divided by the mean of the medians for all class-levels.
+        * (When filtering on significance of univariate tests) Significance of test of null hypothesis that there is no difference between the two classes, i.e, the pair-wise test.
+    -->
+    <data name="contrast_corcov" label="${tool.name}_${variableMetadata_in.name}_corcov" format="tabular" />
+  </outputs>
+
+  <tests>
+    <test>
+      <param name="dataMatrix_in" value="input_dataMatrix.tsv"/>
+      <param name="sampleMetadata_in" value="input_sampleMetadata.tsv"/>
+      <param name="variableMetadata_in" value="input_variableMetadata.tsv"/>
+      <param name="tesC" value="kruskal"/>
+      <param name="facC" value="k10"/>
+      <param name="pairSigFeatOnly" value="FALSE"/>
+      <param name="labelFeatures" value="TRUE"/>
+      <param name="levCSV" value="k[12],k[3-4]"/>
+      <param name="matchingC" value="regex"/>
+      <output name="contrast_corcov">
+        <assert_contents>
+          <!-- column-labels line -->
+          <has_text text="featureID" />
+          <has_text text="factorLevel1" />
+          <has_text text="factorLevel2" />
+          <has_text text="correlation" />
+          <has_text text="covariance" />
+          <has_text text="vip4p" />
+          <has_text text="vip4o" />
+          <has_text text="salientLevel" />
+          <has_text text="salientRCV" />
+          <has_text text="salience" />
+          <has_text text="level1Level2Sig" />
+          <!-- first matched line -->
+          <has_text text="M349.2383T700" />
+          <has_text text="-0.05007" />
+          <has_text text="-5.8455" />
+          <has_text text="0.0961269" />
+          <has_text text="0.1848301" />
+          <has_text text="0.659554" />
+          <has_text text="8.81866595" />
+          <!-- second matched line -->
+          <has_text text="M207.9308T206" />
+          <has_text text="-0.2967565" />
+          <has_text text="-19.56942" />
+          <has_text text="1.6023" />
+          <has_text text="1.35368" />
+          <has_text text="0.0578578" />
+          <has_text text="2.27527985" />
+          <!-- third matched line -->
+          <has_text text="M211.0607T263" />
+          <has_text text="0.47052" />
+          <has_text text="15.910087" />
+          <has_text text="0.89838" />
+          <has_text text="0.125372" />
+          <has_text text="9999" />
+          <has_text text="12.87766096" />
+        </assert_contents>
+      </output>
+    </test>
+    <test>
+      <param name="dataMatrix_in" value="input_dataMatrix.tsv"/>
+      <param name="sampleMetadata_in" value="input_sampleMetadata.tsv"/>
+      <param name="variableMetadata_in" value="input_variableMetadata.tsv"/>
+      <param name="tesC" value="kruskal"/>
+      <param name="facC" value="k10"/>
+      <param name="pairSigFeatOnly" value="TRUE"/>
+      <param name="labelFeatures" value="TRUE"/>
+      <param name="levCSV" value="k[12],k[3-4]"/>
+      <param name="matchingC" value="regex"/>
+      <output name="contrast_corcov">
+        <assert_contents>
+          <!-- column-labels line -->
+          <has_text text="featureID" />
+          <has_text text="factorLevel1" />
+          <has_text text="factorLevel2" />
+          <has_text text="correlation" />
+          <has_text text="covariance" />
+          <has_text text="vip4p" />
+          <has_text text="vip4o" />
+          <has_text text="salientLevel" />
+          <has_text text="salientRCV" />
+          <has_text text="salience" />
+          <has_text text="level1Level2Sig" />
+          <!-- first matched line -->
+          <has_text text="M349.2383T700" />
+          <has_text text="-0.99601577" />
+          <has_text text="-947.55795176" />
+          <has_text text="0.659554" />
+          <has_text text="8.81866595" />
+          <!-- second matched line -->
+          <has_text text="M207.9308T206" />
+          <has_text text="0.688549" />
+          <has_text text="58.22352" />
+          <has_text text="1.394687" />
+          <has_text text="0.06049885" />
+          <has_text text="0.0578578" />
+          <has_text text="2.27527985" />
+          <!-- third matched line -->
+          <has_text text="M211.0607T263" />
+          <has_text text="-0.572018" />
+          <has_text text="-14.57769" />
+          <has_text text="0.7780899" />
+          <has_text text="0.3678166776" />
+          <has_text text="9999" />
+          <has_text text="12.87766096" />
+        </assert_contents>
+      </output>
+    </test>
+    <test>
+      <param name="dataMatrix_in" value="input_dataMatrix.tsv"/>
+      <param name="sampleMetadata_in" value="input_sampleMetadata.tsv"/>
+      <param name="variableMetadata_in" value="input_variableMetadata.tsv"/>
+      <param name="tesC" value="none"/>
+      <param name="facC" value="k10"/>
+      <param name="pairSigFeatOnly" value="TRUE"/>
+      <param name="labelFeatures" value="FALSE"/>
+      <param name="levCSV" value="k[12],k[3-4]"/>
+      <param name="matchingC" value="regex"/>
+      <output name="contrast_corcov">
+        <assert_contents>
+          <!-- column-labels line -->
+          <has_text text="featureID" />
+          <has_text text="factorLevel1" />
+          <has_text text="factorLevel2" />
+          <has_text text="correlation" />
+          <has_text text="covariance" />
+          <has_text text="vip4p" />
+          <has_text text="vip4o" />
+          <has_text text="salientLevel" />
+          <has_text text="salientRCV" />
+          <has_text text="salience" />
+          <!-- first matched line -->
+          <has_text text="M349.2383T700" />
+          <has_text text="-0.64331257" />
+          <has_text text="-161.82220" />
+          <has_text text="1.862455" />
+          <has_text text="0.2105143" />
+          <has_text text="0.659554" />
+          <has_text text="8.81866595" />
+          <!-- second matched line -->
+          <has_text text="M207.9308T206" />
+          <has_text text="-0.313507" />
+          <has_text text="-20.0476" />
+          <has_text text="1.6956987" />
+          <has_text text="1.19247" />
+          <has_text text="0.0578578" />
+          <has_text text="2.27527985" />
+          <!-- third matched line -->
+          <has_text text="M211.0607T263" />
+          <has_text text="-0.38986114" />
+          <has_text text="-23.747718" />
+          <has_text text="1.064296856" />
+          <has_text text="1.16507455" />
+          <has_text text="9999" />
+          <has_text text="12.87766096" />
+        </assert_contents>
+      </output>
+    </test>
+  </tests>
+  <!-- 
+  .. |reg|    unicode:: U+000AE .. REGISTERED SIGN - see http://docutils.sourceforge.net/docutils/parsers/rst/include/isonum.txt or /usr/share/docutils/parsers/rst/include/isonum.txt
+  -->
+  <help><![CDATA[
+
+**Run PLS-DA Contrasts of Univariate Results**
+----------------------------------------------
+
+**Author** - Arthur Eschenlauer (University of Minnesota, esch0041@umn.edu)
+
+**Tool updates**
+----------------
+
+See the **NEWS** section at the bottom of this page
+
+
+Description
+-----------
+
+The purpose of the 'PLS-DA Contrasts' tool is to identify and visualize GC-MS or LC-MS features that are likely biomarkers, i.e., that can be used to discriminate between members of a pair of classes of samples.  It is intended to complement Workflow4Metabolomics (W4M, Giacomoni *et al.*, 2014, Guitton *et al.*, 2017), which provides a suite of tools for preprocessing and statistical analysis of LC-MS, GC-MS, and NMR metabolomics data.
+
+The W4M 'Univariate' tool (Thévenot *et al.*, 2015) adds the results of family-wise corrected pairwise significance-tests as columns of the **variableMetadata** dataset.
+For instance, suppose that you ran Kruskal-Wallis testing for a column named 'cluster' in sampleMetadata that has values 'k1' and 'k2' and at least one other value.
+
+- A column of variableMetadata would be labeled 'cluster_kruskal_sig' and would have values '1' and '0', where '1' means that if the samples are grouped by cluster, there is little strong evidence against the hypothesis that there is no difference among the mean intensity for the feature for each group.
+- A column of variableMetadata would be labeled 'cluster_kruskal_k1.k2_sig' and would have values '1' and '0', where '1' means that there is significant evidence against the hypothesis that samples from sampleMetadata whose 'cluster' column contains 'k1' or 'k2' have the same mean intensity for a given feature.
+
+The 'PLS-DA Contrasts' tool accepts the output of the W4M 'Univariate' tool and produces graphics and data for OPLS-DA\ :superscript:`®` contrasts of feature-intensities between significantly different pairs of factor-levels.  It omits features that are not significantly different either for each pair-wise contrast or across all samples.
+
+W4M Workflow Position
+---------------------
+
+- Upstream tool: **Univariate** (category: Statistical Analysis)
+- Downstream tool categories: **Statistical Analysis**
+
+Motivation
+----------
+
+OPLS-DA\ :superscript:`®`, generally, and the SIMCA\ :superscript:`®` S-PLOT\ :superscript:`®` (Wiklund *et al.*, 2008), in particular, are employed (e.g. in Sun *et al.*, 2016) to identify features that are potiential biomarkers, i.e. features that are potentially useful to discriminate to which of two classes a sample should be assigned.  W4M does not (as of release 3.0) include a tool for making the equivalent of an S-PLOT.
+
+The S-PLOT is computed from mean-centered, pareto-scaled data.  This plot presents the correlation of the first score vector from an OPLS-DA model with the sample-variables used to produce that model versus the covariance of the scores with the sample-variables.  For OPLS-DA, the first score vector represents the variation among the sample-variables that is explained by the contrasting factor.
+
+The principal aims of this tool are:
+
+- To compute multiple contrasts with OPLS-DA and the covariance vs. correlation plot.
+- To visualize multiple contrasts compactly yet informatively.
+- To write the results to data files for use in further multivariate analysis or visualization.
+
+Input files
+-----------
+
++----------------------+-----------+
+| File                 |  Format   |
++======================+===========+
+| Data matrix          |  tabular  |
++----------------------+-----------+
+| Sample metadata      |  tabular  |
++----------------------+-----------+
+| Variable metadata    |  tabular  |
++----------------------+-----------+
+
+Output files
+------------
+
++------------------------------+-----------+
+| File                         |  Format   |
++==============================+===========+
+| Contrast grid                |    pdf    |
++------------------------------+-----------+
+| Contrast detail              |    pdf    |
++------------------------------+-----------+
+| Contrast cor and cov         |  tabular  |
++------------------------------+-----------+
+| Variable metadata supplement |  tabular  |
++------------------------------+-----------+
+
+Parameters
+----------
+
+[IN] Data matrix file
+	| variable x sample **dataMatrix** (tabular separated values) file of the numeric data matrix, with . as decimal, and NA for missing values; the table must not contain metadata apart from row and column names; the row and column names must be identical to the rownames of the sample and variable metadata, respectively (see below)
+	|
+
+[IN] Sample metadata file
+	| sample x metadata **sampleMetadata** (tabular separated values) file of the numeric and/or character sample metadata, with . as decimal and NA for missing values
+	|
+
+[IN] Variable metadata file
+	| variable x metadata **variableMetadata** (tabular separated values) file of the numeric and/or character variable metadata, with . as decimal and NA for missing values
+	|
+
+[IN] Test
+	| Name of the **statistical test** - a component of column names in variable metadata table
+	| May be one of 'none', 'ttest', 'gwilcoxon', 'anova', 'kruskal', 'pearson', 'spearman'
+	|
+
+[IN] Factor of interest
+	| Name of the **column of sampleMetadata** corresponding to the qualitative or quantitative variable
+	|
+
+[IN] Retain only pairwise-significant features
+	| When true, for each contrast of two levels, include only those features which pass the significance threshold for that contrast.  Choosing true results in an OPLS-DA model that better reflects and visualizes the difference detected by univariate analysis, with somewhat increased reliability of prediction (as assessed by cross-validation).
+	| When false, include all features that pass the significance threshold when testing for difference across all factor-levels.  This choice produces a plot that displays more features but is not necessarily more informative.
+	|
+
+[IN] Levels of interest
+	| comma-separated **level-names** (or comma-less regular expressions to match level-names) to consider in analysis; must match at least two levels; may include wild cards or regular expressions
+	|
+
+[IN] Level-name matching
+	| How to **specify levels generically** - wild cards, regular expressions, or none (no generic matching)
+	|
+
+[OUT] Contrast-grid output PDF
+	| An output file **displaying on a single figure**, for each pair of selected level-names, **the OPLS-DA scores plot and the correlation-vs.-covariance plot** (a work-alike for the SIMCA S-PLOT) 
+	|
+
+[OUT] Contrast-detail output PDF
+	| An output file having **several plots for each pair of selected level-names**: the PCA score-plot for the first two scores, the OPLS-DA score-plot for the first two scores, and the OPLS-DA correlation-vs.-covariance plot (a work-alike for the S-PLOT)
+	|
+
+[OUT] Contrast Correlation-Covarinace data TABULAR
+	| A tab-separated values file having the following columns:
+
+- **featureID** - feature identifier
+- **factorLevel1** - factor-level 1
+- **factorLevel2** - factor-level 2
+- **correlation** - correlation of the features projection explaining the difference between the features, > 0 when intensity for level 1 is greater than intensity for level 2 (from formula in Supplement to Wiklund, *op. cit.*)
+- **covariance** - covariance of the features projection explaining the difference between the features, > 0 when intensity for level 1 is greater than intensity for level 2 (from formula in *ibid.*)
+- **vip4p** - variable importance in projection to the predictive components (VIP\ :subscript:`4,p` from Galindo-Prieto *et al.* 2014)
+- **vip4o** - variable importance in projection to the orthogonal components (VIP\ :subscript:`4,o` from Galindo-Prieto *op cit.*)
+- **salientLevel** - Salient level, i.e., for the feature, the class-level having the greatest median intensity
+- **salientRCV** - Salient robust coefficient of variation, i.e., for the feature, the mean absolute deviation of the intensity for the salient level divided by the median intensity for the salient level
+- **salience** - Salience, i.e., for the feature, the median of the class-level having the greatest intensity divided by the mean of the medians for all class-levels
+- **level1Level2Sig** - (Only present when a test other than "none" is chosen) '1' when feature varies significantly across all classes (i.e., not pair-wise); '0' otherwise
+
+Wild card patterns to match level-names
+---------------------------------------
+
+"wild card" patterns may be used to select level-names.
+
+- use '``?``' to match a single character
+- use '``*``' to match zero or more characters
+- the entire pattern must match the level name
+
+For example
+
+- '``??.le*``' matches '``my.level``' but not '``my.own.level``'
+- '``*.level``' matches '``my.level``' and '``my.own.level``'
+- '``*.level``' matches neither '``my.level``' nor '``my.own.level``'
+
+Regular expression patterns to match level-names
+------------------------------------------------
+
+"regular expression" patterns may be used to select level-names.
+
+POSIX 1003.2 standard regular expressions allow precise pattern-matching and are exhaustively defined at:
+http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html
+
+However, only a few basic building blocks of regular expressions need to be mastered for most cases:
+
+- '``^``' matches the beginning of a level-name
+- '``$``' matches the end of a level-name
+- '``.``' outside of square brackets matches a single character
+- '``*``' matches character specified immediately before zero or more times
+- square brackets specify a set of characters to be matched.
+
+Within square brackets
+
+- '``^``' as the first character specifies that the list of characters are those that should **not** be matched.
+- '``-``' is used to specify ranges of characters
+
+Caveat: The tool wrapper uses the comma ('``,``') to split a list of sample-level names, so **commas may not be used within regular expressions for this tool**
+
+First Example: Consider a field of level-names consisting of '``marq3,marq6,marq9,marq12,front3,front6,front9,front12``'
+
+- The regular expression '``^front[0-9][0-9]*$``' will match the same sample-levels as '``front3,front6,front9,front12``'
+- The regular expression '``^[a-z][a-z]3$``' will match the same sample-levels as '``front3,marq3``'
+- The regular expression '``^[a-z][a-z]12$``' will match the same sample-levels as '``front12,marq12``'
+- The regular expression '``^[a-z][a-z][0-9]$``' will match the same sample-levels as '``front3,front6,front9,marq3,marq6,marq9``'
+
+Second Example: Consider these regular expression patterns as possible matches to a sample-level name '``AB0123``':
+
+- '``^[A-Z][A-Z][0-9][0-9]*$``' - MATCHES '``**^AB0123$**``'
+- '``^[A-Z][A-Z]*[0-9][0-9]*$``' - MATCHES '``**^AB0123$**``'
+- '``^[A-Z][0-9]*``' - MATCHES  '``**^A** B0123$``' - first character is a letter, '``*``' can specify zero characters, and end of line did not need to be matched.
+- '``^[A-Z][A-Z][0-9]``' - MATCHES  '``**^AB0** 123$``' - first two characters are letters aind the third is a digit.
+- '``^[A-Z][A-Z]*[0-9][0-9]$``' - NO MATCH - the name does not end with the pattern '``[A-Z][0-9][0-9]$``', i.e., it ends with four digits, not two.
+- '``^[A-Z][0-9]*$``' - NO MATCH - the pattern specifies that second character and all those that follow, if present, must be digits.
+
+Working example
+---------------
+
+**Input files**
+
++-------------------+-------------------------------------------------------------------------------------------------------------------+
+| Input File        | Download from URL                                                                                                 |
++===================+===================================================================================================================+
+| Data matrix       | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/input_dataMatrix.tsv       |
++-------------------+-------------------------------------------------------------------------------------------------------------------+
+| Sample metadata   | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/input_sampleMetadata.tsv   |
++-------------------+-------------------------------------------------------------------------------------------------------------------+
+| Variable metadata | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/input_variableMetadata.tsv |
++-------------------+-------------------------------------------------------------------------------------------------------------------+
+
++-------------------------------------------+--------------------------------------------------+
+| Input Parameter                           | Input value                                      |
++===========================================+==================================================+
+| Factor of interest                        | k10                                              |
++-------------------------------------------+--------------------------------------------------+
+| Univariate Significance-Test              | kruskal                                          |
++-------------------------------------------+--------------------------------------------------+
+| Retain only pairwise-significant features | Yes                                              |
++-------------------------------------------+--------------------------------------------------+
+| Levels of interest                        | k[12],k[3-4]                                     |
++-------------------------------------------+--------------------------------------------------+
+| Level-name matching                       | use regular expressions for matching level-names |
++-------------------------------------------+--------------------------------------------------+
+| Label features on detail plot             | Yes                                              |
++-------------------------------------------+--------------------------------------------------+
+
++-------------------+---------------------------------------------------------------------------------------------------------------------+
+| Expected Output   | Download from URL                                                                                                   |
++===================+=====================================================================================================================+
+| Data matrix       | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_corcov.tsv |
++-------------------+---------------------------------------------------------------------------------------------------------------------+
+
+
+Trademarks
+----------
+
+OPLS-DA\ :superscript:`®`, SIMCA\ :superscript:`®`, and S-PLOT\ :superscript:`®` are registered trademarks of the Umetrics company.  http://umetrics.com/about-us/trademarks
+
+
+  ]]></help>
+  <citations>
+    <!-- Galindo_Prieto_2014 Variable influence on projection (VIP) for OPLS -->
+    <citation type="doi">10.1002/cem.2627</citation>
+    <!-- Giacomoni_2014 W4M 2.5 -->
+    <citation type="doi">10.1093/bioinformatics/btu813</citation>
+    <!-- Guitton_2017 W4M 3.0 -->
+    <citation type="doi">10.1016/j.biocel.2017.07.002</citation>
+    <!-- Sun_2016 Urinary Biomarkers for adolescent idiopathic scoliosis -->
+    <citation type="doi">10.1038/srep22274</citation>
+    <!-- Th_venot_2015 Urinary metabolome statistics -->
+    <citation type="doi">10.1021/acs.jproteome.5b00354</citation>
+    <!-- Wiklund_2008 OPLS PLS-DA and S-PLOT -->
+    <citation type="doi">10.1021/ac0713510</citation>
+  </citations>
+  <!--
+     vim:noet:sw=4:ts=4
+-->
+</tool>