diff w4mcorcov.xml @ 1:0c2ad44b6c9c draft

planemo upload for repository https://github.com/HegemanLab/w4mcorcov_galaxy_wrapper/tree/master commit 01d4a951cf09e7b88fcec96b8043bc7568cc5c92
author eschen42
date Sun, 22 Oct 2017 18:47:57 -0400
parents 23f9fad4edfc
children e03582f26617
line wrap: on
line diff
--- a/w4mcorcov.xml	Mon Oct 16 14:56:52 2017 -0400
+++ b/w4mcorcov.xml	Sun Oct 22 18:47:57 2017 -0400
@@ -1,4 +1,4 @@
-<tool id="w4mcorcov" name="OPLS-DA_Contrasts" version="0.98.2">
+<tool id="w4mcorcov" name="OPLS-DA_Contrasts" version="0.98.3">
 
   <description>OPLS-DA Contrasts of Univariate Results</description>
   
@@ -31,9 +31,9 @@
   <inputs>
     <param name="dataMatrix_in" label="Data matrix file" type="data" format="tabular" help="Features x samples (tabular data - decimal: '.'; missing: NA; mode: numerical; separator: tab character)" />
     <param name="sampleMetadata_in" label="Sample metadata file" type="data" format="tabular" help="Samples x metadata (tabular data - decimal: '.'; missing: NA; mode: character or numerical; separator: tab character)" />
-    <param name="variableMetadata_in" label="Variable metadata file (from Univariate)" type="data" format="tabular" help="Features x metadata (tabular data - decimal: '.'; missing: NA; mode: character or numerical; separator: tab character)" />
-    <param name="facC" label="Factor of interest" type="text" help="The name of the column of sampleMetadata corresponding to the qualitative variable used to define the contrasts.  This also must be a portion of the column names in the variableMetadata file except when the 'Univariate Significance-test' is set to 'none'."/>
-    <param name="tesC" label="Univariate Significance-Test" type="select" help="Either 'none' or the name of the statistical test that was run by the 'Univariate' tool to produce the variableMetadata file; that name must also be a portion of the column names in that file">
+    <param name="variableMetadata_in" label="Variable metadata file (ideally from Univariate)" type="data" format="tabular" help="Features x metadata (tabular data - decimal: '.'; missing: NA; mode: character or numerical; separator: tab character)" />
+    <param name="facC" label="Factor of interest" type="text" help="REQUIRED - The name of the column of sampleMetadata corresponding to the qualitative variable used to define the contrasts.  Except when the 'Univariate Significance-test' is set to 'none', this also must be a portion of the column names in the variableMetadata file."/>
+    <param name="tesC" label="Univariate Significance-Test" type="select" help="Either 'none' or the name of the statistical test that was run by the 'Univariate' tool to produce the variableMetadata file; that name must also be 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>
@@ -47,8 +47,8 @@
       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">
+      help="When 'none' is chosen, all features are included in the analysis.  Otherwise, when this option is set to 'Yes', analysis will be performed including only features that differ significantly for the pair of levels being contrasted; when set to 'No', any feature that varies significantly across all levels will be included (i.e., exclude any feature that is not significantly different across all levels).  See examples below."/>
+    <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; levels must be non-numeric; may include wild cards or regular expressions.  Note that extra space characters will affect results - 'a,b' is correct, but 'a , b' is not and may fail or give different results.">
       <sanitizer>
         <valid initial="string.letters">
           <add preset="string.digits"/>
@@ -74,12 +74,12 @@
         </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>
+    <param name="matchingC" label="Level-name matching" type="select" help="How to specify level-names generically (if at all).">
+      <option value="none">do no generic matching (default)</option>
+      <option value="wildcard" selected="true">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."/>
+    <param name="labelFeatures" type="text" value="3" label="Number of features having extreme loadings to label on cov-vs.-cor plot" help="Specify the number of features at each of the four loading-extremes that should be labelled (with the name of the feature) on the covariance-vs.-correlation plot; specify 'ALL' to label all features; this choice has no effect on the OPLS-DA loadings plot."/>
   </inputs>
 
   <outputs>
@@ -314,33 +314,39 @@
 Motivation
 ----------
 
-OPLS-DA\ :superscript:`®` and the SIMCA\ :superscript:`®` S-PLOT\ :superscript:`®` (Wiklund *et al.*, 2008) may be employed (e.g. Sun *et al.*, 2016) to identify features that are potential biomarkers, i.e. features that are potentially useful to discriminate to which class a sample should be assigned.  Workflow4Metabolomics (W4M, Giacomoni *et al.*, 2014, Guitton *et al.*, 2017) provides a suite of tools for preprocessing and statistical analysis of LC-MS, GC-MS, and NMR metabolomics data; however, it does not (as of release 3.0) include a tool for making the equivalent of an S-PLOT.
+OPLS-DA\ :superscript:`®` and the SIMCA\ :superscript:`®` S-PLOT\ :superscript:`®` (Wiklund *et al.*, 2008) may be employed to draw attention to metabolomic features that are potential biomarkers, i.e. features that are potentially useful to discriminate to which class a sample should be assigned (e.g. Sun *et al.*, 2016).  Workflow4Metabolomics (W4M, Giacomoni *et al.*, 2014, Guitton *et al.*, 2017) provides a suite of tools for preprocessing and statistical analysis of LC-MS, GC-MS, and NMR metabolomics data; however, it 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 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 related to the predictor (i.e., the contrasting factor).
 
-The principal aims of this tool are:
+The primary 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 compute and visualize multiple contrasts with OPLS-DA and the covariance vs. correlation plot.
 - To write the results to data files for use in further multivariate analysis or visualization.
 
+Note: This tool only supports categorical factors with non-numeric level-names.
 
 Description
 -----------
 
-The purpose of the 'PLS-DA Contrasts' tool is to identify and visualize GC-MS or LC-MS features that are possible biomarkers.
+The purpose of the 'PLS-DA Contrasts' tool is to visualize GC-MS or LC-MS features that are possible biomarkers.
 
 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, when the samples are grouped by 'cluster', there is strong evidence against the hypothesis that there is no difference among the intensities for the feature across all sample-groups.
+- A column of variableMetadata would be labeled 'cluster_kruskal_sig' and would have values '1' and '0'; when the samples are grouped by 'cluster', '1' means that there is strong evidence against the hypothesis that there is no difference among the intensities for the feature across all sample-groups.
 - 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 intensity for that feature.
 
-The 'PLS-DA Contrasts' tool produces graphics and data for OPLS-DA contrasts of feature-intensities between significantly different pairs of factor-levels.  For each factor-level, the tool performs a contrast with all other factor-levels combined and then separately with each other factor-level.
+The 'PLS-DA Contrasts' tool produces graphics and data for OPLS-DA contrasts of feature-intensities between significantly different pairs of factor-levels.  For each factor-level, the tool performs a contrast with all other factor-levels combined and then separately with each other factor-level.  
+
+**Along the left-to-right axis, the plots show the supervised projection of the variation explained by the predictor** (i.e., the factor specified when invoking the tool); **the top-to-bottom axis displays the variation that is orthogonal to the predictor level** (i.e., independent of it).
+
+Although this tool can be used in a purely exploratory manner by supplying the variableMetadata file without the columns added by the W4M 'Univariate' tool, **the preferred workflow is to use univariate testing to exclude features that are not significantly different and use OPLS-DA to visualize the differences identified in univariate testing** (Thévenot *et al.*, 2015); an appropriate exception would be to visualize contrasts of a specific list of metabolites.
 
-This tool can be used in a purely exploratory manner by supplying the variableMetadata file without the columns added by the W4M 'Univariate' tool.  However, the preferred workflow (Thévenot *et al.*, 2015) is to use univariate testing to exclude features that are not significantly different and use OPLS-DA to visualize the differences identified in univariate testing; an appropriate exception would be to visualize contrasts of a specific list of metabolites.
+It must be stressed that there may be no *single* definitive computational approach to select features that are reliable biomarkers, especially from a small number of samples or experiments.  A few possible choices are examining extreme values on S-PLOTs, examining "variable importance in projection VIP for OPLS-DA" (Galindo-Prieto *et al.* 2014), and examining a feature's "selectivity ratio" (Rajalahti *et al.*, 2009).  In this spirit, this tool reports the S-PLOT covariance and correlation (Wiklund *op. cit.*) and VIP metrics, and it introduces an informal "salience" metric to flag features that may merit attention without dimensional reduction; future versions may add selectivity ratio.  
 
-It must be stressed that there may be no definitive computational approach to select features that are guaranteed to be reliable biomarkers.  Possible methods are examining extreme values on S-PLOTs, examining "variable importance in projection VIP for OPLS-DA" (Galindo-Prieto *et al.* 2014), or examining a feature's "selectivity ratio" (Rajalahti *et al.*, 2009).  In this spirit, this tool reports the S-PLOT covariance and correlation (Wiklund *op. cit.*) and VIP metrics, and it introduces an informal "salience" metric to flag features that may merit attention without dimensional reduction; future versions may add selectivity ratio.  Regardless of how any potential biomarker is identified, it should be subjected to further validation analysis before it is recommended for general application.
+For a more systematic approach to biomarker identification, please consider the W4M 'biosigner' tool (Rinuardo *et al.* 2016), which applies three different identification metrics to the selection process.
+
+Regardless of how any potential biomarker is identified, further validation analysis (e.g., independent confirmatory experiments) is needed before it is recommended for general application.
 
 
 W4M Workflow Position
@@ -352,68 +358,69 @@
 Input files
 -----------
 
-+----------------------+-----------+
-| File                 |  Format   |
-+======================+===========+
-| Data matrix          |  tabular  |
-+----------------------+-----------+
-| Sample metadata      |  tabular  |
-+----------------------+-----------+
-| Variable metadata    |  tabular  |
-+----------------------+-----------+
+  +----------------------+-----------+
+  | File                 |  Format   |
+  +======================+===========+
+  | Data matrix          |  tabular  |
+  +----------------------+-----------+
+  | Sample metadata      |  tabular  |
+  +----------------------+-----------+
+  | Variable metadata    |  tabular  |
+  +----------------------+-----------+
 
 Output files
 ------------
 
-+------------------------------+-----------+
-| File                         |  Format   |
-+==============================+===========+
-| Contrast detail              |    pdf    |
-+------------------------------+-----------+
-| Contrast cor and cov         |  tabular  |
-+------------------------------+-----------+
-| Variable metadata supplement |  tabular  |
-+------------------------------+-----------+
+  +-------------------------------------------+-----------+
+  | File                                      |  Format   |
+  +===========================================+===========+
+  | Contrast detail                           |    pdf    |
+  +-------------------------------------------+-----------+
+  | Contrast "corrlation and covariance" data |  tabular  |
+  +-------------------------------------------+-----------+
+  | Feature "salience" data                   |  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)
-	|
+  | 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
-	|
+  | 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
-	|
+  | 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'
-	|
+  | 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
-	|
+  | 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.
-	|
+  | 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.
+  | *Note that when 'Test' is 'none', all features are included in the analysis and this parameter has no effect.*
+  |
 
 [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
-	|
+  | 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)
-	|
+  | Indicator of **how levels are to be specified generically** (if at all) - wild cards, regular expressions, or none (no generic matching).
+  |
 
 [OUT] Contrast-detail output PDF
-	| Several plots for each two-projection OPLS-DA analysis:
+  | Several plots for each two-projection OPLS-DA analysis:
 
 - (top-left) **correlation-versus-covariance plot** of OPLS-DA results (a work-alike for the S-PLOT, computed using formula in Supplement to Wiklund, *op. cit.*); point-color becomes saturated as the "variable importance in projection to the predictive components" (VIP\ :subscript:`4,p` from Galindo-Prieto *et al.* 2014) ranges from 0.83 and 1.21 (Mehmood *et al.* 2012)
 - (bottom-left) **model-overview plot** for the two projections; grey bars are the correlation coefficient for the fitted data; black bars indicate performance in cross-validation tests (Thévenot, 2017)
@@ -421,19 +428,23 @@
 - (bottom-right) OPLS-DA **loadings-plot** for the two projections (*ibid.*)
 
 [OUT] Contrast Correlation-Covarinace data TABULAR
-	| A tab-separated values file having the following columns:
+  | A tab-separated values file of metadata for each feature for each contrast in which it was included.
+  | Thus, a given feature may appear many times, but *the combination of featureID, factorLevel1, and factorLevel2 will be unique.*
+  | This file has the following columns:
 
 - **featureID** - feature-identifier
 - **factorLevel1** - factor-level 1
 - **factorLevel2** - factor-level 2 (or "other" when contrasting factor-level 1 with all other levels)
 - **correlation** - correlation of the features projection explaining the difference between the features, < 0 when intensity for level 1 is greater (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 (from formula in *ibid.*)
-- **vip4p** - "variable importance in projection" to the predictive components (VIP\ :subscript:`4,p` from Galindo-Prieto *op. cit.*)
-- **vip4o** - "variable importance in projection" to the orthogonal components (VIP\ :subscript:`4,o` from Galindo-Prieto *op. cit.*)
+- **vip4p** - "variable importance in projection" to the predictive projection, VIP\ :subscript:`4,p` (Galindo-Prieto *op. cit.*)
+- **vip4o** - "variable importance in projection" to the orthogonal projection, VIP\ :subscript:`4,o` (*ibid.*)
+- **loadp** - variable loading for the predictive projection (Wiklund *op. cit.*)
+- **loado** - variable loading for the orthogonal projection (*ibid.*)
 - **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
 
 [OUT] Feature "Salience" data TABULAR
-	| Metrics for the "salient level" for each feature, i.e., the level at which the feature is more prominent than any other level.  This is *not* at all related to the SIMCA OPLS-DA S-PLOT; rather, it is intended as a potential (and unproven) way to identify features that may suggest potential biomarkers without dimensional reduction of data.  This is a tab-separated values file having the following columns:
+  | Metrics for the "salient level" for each feature, i.e., the level at which the feature is more prominent than any other level.  This is *not* at all related to the SIMCA OPLS-DA S-PLOT; rather, it is intended as a potential (and unproven) way to identify features that may suggest potential biomarkers without dimensional reduction of data.  This is a tab-separated values file having the following columns:
 
 - **featureID** - feature identifier
 - **salientLevel** - salient level, i.e., for the feature, the class-level having the greatest median intensity
@@ -469,14 +480,12 @@
 - '``$``' 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
+- 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
+  - '``^``' 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**
+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``'
 
@@ -494,42 +503,116 @@
 - '``^[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
----------------
+Working examples
+----------------
 
 **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 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 |
+  +-------------------+-------------------------------------------------------------------------------------------------------------------+
+
+**Example 1:** Include in the analysis only features identified as pair-wise significant in the Univariate test.
+
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Input Parameter or Result                  | 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                                                                                       |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Number of features having extreme loadings | ALL                                                                                                                                    |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output primary table                       | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_corcov.tsv                    |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output salience table                      | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_salience.tsv                  |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output figures PDF                         | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_detail.pdf                    |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+
+**Example 2:** Include in the analysis only features identified as overall-significant in the Univariate test.  Note that this even includes these features in contrasts where they were not determined to be pair-wise significant in the Univariate test.  Thus, more features are included than in Example 1.
 
-+-------------------------------------------+--------------------------------------------------+
-| 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                                              |
-+-------------------------------------------+--------------------------------------------------+
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Input Parameter or Result                  | Value                                                                                                                                  |
+  +============================================+========================================================================================================================================+
+  | Factor of interest                         | k10                                                                                                                                    |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Univariate Significance-Test               | kruskal                                                                                                                                |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Retain only pairwise-significant features  | No                                                                                                                                     |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Levels of interest                         | ``*``                                                                                                                                  |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Level-name matching                        | use wild cards for matching level-names                                                                                                |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Number of features having extreme loadings | 5                                                                                                                                      |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output primary table                       | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_corcov_all.tsv                |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output salience table                      | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_salience_all.tsv              |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output figures PDF                         | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_detail_all.pdf                |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+
+**Example 3:** Include all features in the analysis without regard to Univariate testing.  Univariate testing is not even a pre-requisite to using the tool when 'none' is selected for the test.  Thus, more features are included than in Example 2.
 
-+-------------------+---------------------------------------------------------------------------------------------------------------------+
-| Expected Output   | Download from URL                                                                                                   |
-+===================+=====================================================================================================================+
-| Data matrix       | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_corcov.tsv |
-+-------------------+---------------------------------------------------------------------------------------------------------------------+
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Input Parameter or Result                  | Value                                                                                                                                  |
+  +============================================+========================================================================================================================================+
+  | Factor of interest                         | k10                                                                                                                                    |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Univariate Significance-Test               | none                                                                                                                                   |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Retain only pairwise-significant features  | No                                                                                                                                     |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Levels of interest                         | k[12],k[3-4]                                                                                                                           |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Level-name matching                        | use regular expressions for matching level-names                                                                                       |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Number of features having extreme loadings | 0                                                                                                                                      |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output primary table                       | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_corcov_global.tsv             |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output salience table                      | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_salience_global.tsv           |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output figures PDF                         | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_detail_global.pdf             |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+
+**Example 4:** Analysis of a two-level factor (including all features).  This suppresses the contrasts of "each factor vs. the aggregate of all the others".
+
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Input Parameter or Result                  | Value                                                                                                                                  |
+  +============================================+========================================================================================================================================+
+  | Factor of interest                         | lohi                                                                                                                                   |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Univariate Significance-Test               | none                                                                                                                                   |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Retain only pairwise-significant features  | No                                                                                                                                     |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Levels of interest                         | low,high                                                                                                                               |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Level-name matching                        | use regular expressions for matching level-names                                                                                       |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Number of features having extreme loadings | 3                                                                                                                                      |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output primary table                       | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_corcov_lohi.tsv               |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output salience table                      | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_salience_lohi.tsv             |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
+  | Output figures PDF                         | https://raw.githubusercontent.com/HegemanLab/w4mcorcov_galaxy_wrapper/master/test-data/expected_contrast_detail_lohi.pdf               |
+  +--------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------+
 
 
 Trademarks
@@ -541,7 +624,16 @@
 Release notes
 -------------
 
-v0.98.2 - first release
+0.98.3
+
+- add support for two-level factors
+- add adjusted mz and rt to output tables
+- allow explicitly setting the number of features with extreme loadings to be labeled on the correlation vs. covariance plot
+- add loadings to corcov table
+
+0.98.2
+
+- first release
 
 
   ]]></help>
@@ -556,21 +648,23 @@
     <citation type="doi">10.1186/1748-7188-6-27</citation>
     <!-- Rajalahti_2009 Biomarker discovery using selectivity ratio -->
     <citation type="doi">10.1016/j.chemolab.2008.08.004</citation>
+    <!-- Rinuardo 2016 -->
+    <citation type="doi">10.3389/fmolb.2016.00026</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>
     <!-- ropls package -->
     <citation type="bibtex"><![CDATA[
-@incollection{Thevenot_ropls_2017,
-    author = {Th{\'{e}}venot, Etienne A.},
-    title = {ropls: PCA, PLS(-DA) and OPLS(-DA) for multivariate analysis and feature selection of omics data},
-    publisher = {bioconductor.org},
-    year = {2017},
-    doi = {10.18129/B9.bioc.ropls},
-    booktitle = {Bioconductor: Open source software for bioinformatics},
-    address = {Roswell Park Cancer Institute},
-}
+    @incollection{Thevenot_ropls_2017,
+      author = {Th{\'{e}}venot, Etienne A.},
+      title = {ropls: PCA, PLS(-DA) and OPLS(-DA) for multivariate analysis and feature selection of omics data},
+      publisher = {bioconductor.org},
+      year = {2017},
+      doi = {10.18129/B9.bioc.ropls},
+      booktitle = {Bioconductor: Open source software for bioinformatics},
+      address = {Roswell Park Cancer Institute},
+    }
     ]]></citation>
     <!-- Wiklund_2008 OPLS PLS-DA and S-PLOT -->
     <citation type="doi">10.1021/ac0713510</citation>