Mercurial > repos > eschen42 > w4mclassfilter
changeset 13:c18040b6e8b9 draft
"planemo upload for repository https://github.com/HegemanLab/w4mclassfilter_galaxy_wrapper/tree/master commit 1a5dd14c3697516bc55950bd6e46c978af7c19cf"
author | eschen42 |
---|---|
date | Thu, 24 Oct 2019 10:21:23 -0400 |
parents | 38f509903a0b |
children | 87ec0d3c2266 |
files | w4mclassfilter.xml w4mclassfilter_wrapper.R |
diffstat | 2 files changed, 58 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/w4mclassfilter.xml Tue Oct 01 16:57:58 2019 -0400 +++ b/w4mclassfilter.xml Thu Oct 24 10:21:23 2019 -0400 @@ -1,10 +1,10 @@ -<tool id="w4mclassfilter" name="W4m Data Subset" version="0.98.13"> +<tool id="w4mclassfilter" name="W4m Data Subset" version="0.98.14"> <description>Filter W4m data by values or metadata</description> <!-- Here is the hyphenation standard that I *try* to apply consistently in my documentation: http://www.sandranoonan.com/dont-let-hyphenation-drive-crazy/ --> <requirements> <requirement type="package" version="3.6.1">r-base</requirement> <requirement type="package" version="1.1_5">r-batch</requirement> - <requirement type="package" version="0.98.13">w4mclassfilter</requirement> + <requirement type="package" version="0.98.14">w4mclassfilter</requirement> </requirements> <command detect_errors="aggressive"><![CDATA[ unset R_HOME; @@ -23,16 +23,18 @@ dataMatrix_out '$dataMatrix_out' sampleMetadata_out '$sampleMetadata_out' variableMetadata_out '$variableMetadata_out' + order_vrbl '$order_vrbl' + order_smpl '$order_smpl' ]]></command> <inputs> <param name="dataMatrix_in" format="tabular" label="Data matrix file" type="data" - help="variables ✖ samples" /> + help="data matrix, with sample names in first row and feature names in first column" /> <param name="sampleMetadata_in" format="tabular" label="Sample metadata file" type="data" - help="sample metadata, one row per sample" /> + help="sample metadata, with one row per sample" /> <param name="variableMetadata_in" format="tabular" label="Variable metadata file" type="data" - help="variable metadata, one row per variable" /> + help="variable metadata, with one row per feature" /> <param name="classnameColumn" label="Column that names the sample-class" type="text" value = "class" - help="name of the column in sample metadata that has the values to be tested against the 'Names of sample-classes' input parameter - defaults to 'class'"> + help="name of the column in sample metadata that has the values to be tested against the 'Names of sample-classes' input parameter"> <sanitizer> <valid initial="string.letters"> <add preset="string.digits"/> @@ -42,7 +44,7 @@ </sanitizer> </param> <param name="sampleclassNames" label="Names of sample-classes" type="text" value = "" - help="comma-separated names (or regular expressions to match names) of sample-classes to filter in or out; defaults to no names"> + help="comma-separated names (or regular expressions to match names) of sample-classes to filter in or out (Leave empty to match no names.)"> <sanitizer> <valid initial="string.letters"> <add preset="string.digits"/> @@ -69,17 +71,17 @@ </sanitizer> </param> <param name="wildcards" label="Use 'wild cards' or 'regular expressions'" type="select" - help="'wild-cards' (the default) - use '*' and '?' to match class names; 'regular-expressions' - use regular expressions to match class names"> + help="'wild-cards' - use '*' and '?' to match class names;    'regular-expressions' - use regular expressions to match class names"> <option value="TRUE" selected="true">wild-cards</option> <option value="FALSE">regular-expressions</option> </param> <param name="inclusive" label="Exclude/include named classes" type="select" - help="'filter-out' (the default) - exclude only the named sample-classes; 'filter-in' - include only the named sample-classes"> + help="'filter-out' - exclude only the named sample-classes;    'filter-in' - include only the named sample-classes"> <option value="TRUE">filter-in</option> <option value="FALSE" selected="true">filter-out</option> </param> <param name="variableRangeFilter" label="Variable-range filters" type="text" value = "" - help="comma-separated filters, each specified as 'variableMetadataColumnName:min:max'; default is no filters. (See help below.)"> + help="comma-separated filters, each specified as 'variableMetadataColumnName:min:max' (leave empty for no filtering, as described in help below.)"> <sanitizer> <valid initial="string.letters"> <add preset="string.digits"/> @@ -91,17 +93,37 @@ </sanitizer> </param> <param name="transformation" label="Data-transformation" type="select" - help="'none' (the default) - do not transform data; 'log2' - log base 2 of data; 'log10' - log base 10 of data; in all cases, negative and missing values are imputed to zero"> + help="'none' - do not transform data;    'log2' - log base 2 of data;    'log10' - log base 10 of data;    in all cases, negative and missing values are imputed to zero"> <option value="none" selected="true">none</option> <option value="log2">log2</option> <option value="log10">log10</option> </param> <param name="imputation" label="Imputation of missing values" type="select" - help="'zero' (the default) - replace missing values with zero; 'center' - replace missing values with feature-median; 'none' - perform no imputation"> + help="'zero' - replace missing values with zero;    'center' - replace missing values with feature-median;    'none' - perform no imputation"> <option value="zero" selected="true">zero</option> <option value="center">center</option> <option value="none">none</option> </param> + <param name="order_smpl" label="Column that specifies order for samples" type="text" value = "sampleMetadata" + help="name of the column in sample metadata that is used to sort samples"> + <sanitizer> + <valid initial="string.letters"> + <add preset="string.digits"/> + <add value="." /> <!-- dot, period --> + <add value="_" /> <!-- underscore --> + </valid> + </sanitizer> + </param> + <param name="order_vrbl" label="Column that specifies order for features" type="text" value = "variableMetadata" + help="name of the column in variable metadata that is used to sort features"> + <sanitizer> + <valid initial="string.letters"> + <add preset="string.digits"/> + <add value="." /> <!-- dot, period --> + <add value="_" /> <!-- underscore --> + </valid> + </sanitizer> + </param> </inputs> <outputs> <data name="dataMatrix_out" format="tabular" label="${dataMatrix_in.name}.subset" ></data> @@ -552,7 +574,7 @@ **Tool updates** -See the **NEWS** section at the bottom of this page +See https://github.com/HegemanLab/w4mclassfilter_galaxy_wrapper#news --------------------------------------------------- @@ -599,7 +621,8 @@ - Samples that are missing from either sampleMetadata or dataMatrix are eliminated. - Features that are missing from either variableMetadata or dataMatrix are eliminated. - Features and samples that have zero variance are eliminated. -- Samples and features are sorted alphabetically in rows and columns of dataMatrix and in rows of variableMetadata and sampleMetadata. +- Samples and features have consistent order in `variableMetadata`, `sampleMetadata`, and `dataMatrix`. + (The column for sorting `variableMetadata` or `sampleMetadata` may be specified.) - The names of the first columns of variableMetadata and sampleMetadata are set respectively to "variableMetadata" and "sampleMetadata". - If desired, the values in the dataMatrix may be log-transformed. - If desired, each missing value in dataMatrix is replaced with zero or the median value observed for the corresponding feature. @@ -638,7 +661,7 @@ ---------- 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, respectively, to the rownames of the sample metadata file and variable metadata file + | feature x sample **dataMatrix** (tabular separated values) file of the numeric data matrix, with period-character ('.') as decimal, and 'NA' for missing values; the table must not contain metadata apart from the required row and column names; the row and column names must be identical (with regard to both content or order) to the respective rownames of the sample metadata file and variable metadata file | Sample metadata file @@ -683,6 +706,13 @@ | '``center``' - For each feature, negative and missing values are imputed to the median of other values. | +Column that specifies order for samples (default = 'sampleMetadata') + | name of the column in **sampleMetadata** that is used to sort samples; only letters, digits, periods, and underscores are permitted. + | + +Column that specifies order for features (default = 'variableMetadata') + | name of the column in **variableMetadata** that is used to sort features; only letters, digits, periods, and underscores are permitted. + | ------------ Output files @@ -833,6 +863,10 @@ +---------------------------------------------+-------------------------------+ | Missing-value imputation | center | +---------------------------------------------+-------------------------------+ +| Sample-sort column | sampleMetadata | ++---------------------------------------------+-------------------------------+ +| Feature-sort column | variableMetadata | ++---------------------------------------------+-------------------------------+ **Expected outputs** @@ -872,6 +906,10 @@ +---------------------------------------------+-----------------------------------+ | Missing-value imputation | zero | +---------------------------------------------+-----------------------------------+ +| Sample-sort column | sampleMetadata | ++---------------------------------------------+-----------------------------------+ +| Feature-sort column | variableMetadata | ++---------------------------------------------+-----------------------------------+ **Expected outputs**
--- a/w4mclassfilter_wrapper.R Tue Oct 01 16:57:58 2019 -0400 +++ b/w4mclassfilter_wrapper.R Thu Oct 24 10:21:23 2019 -0400 @@ -104,6 +104,9 @@ classnameColumn <- as.character(argVc["classnameColumn"]) samplenameColumn <- as.character(argVc["samplenameColumn"]) +order_smpl <- as.character(argVc["order_smpl"]) +order_vrbl <- as.character(argVc["order_vrbl"]) + variable_range_filter <- as.character(argVc["variable_range_filter"]) variable_range_filter <- strsplit(x = variable_range_filter, split = ",", fixed = TRUE)[[1]] @@ -160,6 +163,8 @@ , include = inclusive , class_column = classnameColumn , samplename_column = samplenameColumn +, order_vrbl = order_vrbl +, order_smpl = order_smpl , variable_range_filter = variable_range_filter , failure_action = my_print , data_imputation = my_transformation_and_imputation