Mercurial > repos > md-anderson-bioinformatics > matrix_manipulation
view Matrix_Manipulation.xml @ 1:f1bcd79cd923 draft default tip
Uploaded
author | insilico-bob |
---|---|
date | Tue, 27 Nov 2018 14:20:40 -0500 |
parents | |
children |
line wrap: on
line source
<?xml version='1.1' encoding='utf-8'?> <tool id="Matrix_Manipulation" name="Matrix Manipulation" version="1.2.4"> <description> Data manipulation before heatmap creation</description> <command interpreter="bash" detect_errors="aggressive"> $__tool_directory__/Matrix_Manipulation.sh '$__tool_directory__' '${manipulation.option}' '$p_input' '$output_file' '${manipulation.extra.choice}' '${manipulation.extra.thresh}' '${manipulation.extra.axis}' '${manipulation.extra.transpose}' '${manipulation.extra.input2}' '${manipulation.extra.offsetvalue}' '${manipulation.extra.scalevalue}' </command> <inputs> <param name="p_input" type="data" format="tabular" label="Input Matrix" /> <conditional name="manipulation"> <param name="option" type="select" label="Choose Manipulation Method"> <option value="Matrix_Validations">Missing or Invalid Data</option> <option value="Matrix_Filters">Filter Data</option> <option value="Matrix_Transformations">Transform Data</option> <option value="Matrix_Multiply">Multiply or Correlate Matrices</option> <!-- <option value="Matrix_Statistics">View metadata about Heat Map Matrix</option> --> <!-- <option value="Split_ExcelTabs_IntoFiles">Split Excel tabs into separate tab delimited files</option> --> </param> <when value="Matrix_Validations"> <conditional name="extra"> <param name="choice" type="select" label="Replace Invalid Value with:"> <option value="Mean">Mean</option> <option value="Zero">Zero</option> </param> <when value="Mean"> <param name="axis" type="select" label="Choose Axis:"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="Zero"> <param name="axis" type="text" size="10" hidden="true" value="Row"/> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> </conditional> </when> <when value="Matrix_Filters"> <conditional name="extra"> <param name="choice" type="select" label="Filter Criteria:"> <option value="LowerLimit">Remove row/column if any cell is less than threshold value</option> <option value="UpperLimit">Remove row/column if any cell is greater than threshold value</option> <option value="NANlimit">Remove row/column if number of invalid cells exceeds threshold value </option> <option value="NANpercent">Remove row/column if invalid cells exceeds threshold percent</option> <!-- <option value="VarianceValue">Remove row/column if Variance is below threshold value</option> --> <option value="VarianceCount">Remove row/column if Variance is not in top row/column count</option> <option value="VariancePercent">Remove row/column if Variance is not in top percent</option> <!-- <option value="MADcount">Remove row/column if Median Absolute Deviation (MAD) is not in top row/column count</option> <option value="MADpercent">Remove row/column if Median Absolute Deviation (MAD) is not in top percent</option> --> <!-- <option value="Covariance">Remove row/column if covariance exceeds threshold value</option> <option value="Median">Remove row/column if Median is less than threshold value</option> <option value="MADvalue">Remove row/column if Median Absolute Deviation (MAD) is below threshold value</option> <option value="Mean">Remove row/column if Mean is less than threshold value</option> <option value="Quantile">Remove row/column if less than Quantile_Cutoff</option> <option value="GeneList">Keep only these genes</option> <option value="Histogram">View filter histogram</option> --> </param> <when value="LowerLimit"> <param name="thresh" type="float" size="5" value="0.01" label="Absolute minimum value" help="Lowest value allowed or row/col removed."/> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="UpperLimit"> <param name="thresh" type="float" size="5" value="0.9" label="Absolute maximum value" help="Highest value allowed or row/col removed."/> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="NANlimit"> <param name="thresh" type="integer" size="5" value="50" label="Maximum number NANs" help="More NANs per row/col removed."/> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="NANpercent"> <param name="thresh" type="integer" size="5" value="20" label="Percent maximum" help="Above percent rows/cols removed."/> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="VariancePercent"> <param name="thresh" type="integer" size="5" value="90" label="Percentile minimum" help="Below percentile rows/cols removed."/> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="VarianceCount"> <param name="thresh" type="integer" size="5" value="10" label="Number minimum" help="Below threshold rows/cols removed."/> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="MADpercent"> <param name="thresh" type="integer" size="5" value="90" label="Percentile minimum" help="Below percentile rows/cols removed."/> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="MADcount"> <param name="thresh" type="integer" size="5" value="10" label="Number minimum" help="Below threshold rows/cols removed."/> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> </conditional> </when> <when value="Matrix_Transformations"> <conditional name="extra"> <param name="choice" type="select" label="Choose Normalization Method"> <option value="ln_normalization">Log2 Normalization</option> <option value="log_normalization">Log10 Normalization</option> <option value="mean_center_normalization">Mean Centered Normalization</option> <option value="median_center_normalization">Median Centered Normalization</option> <option value="z_score_normalization">Z-Score Normalization</option> <option value="add_offset">Add Offset Value</option> <option value="scale">Scale by Multiple</option> <option value="divide_by_sum">Divide by Sum</option> <option value="transpose">Matrix Transpose</option> </param> <when value="add_offset"> <param name="offsetvalue" type="text" size="10" value="0.0" label="Matrix Values offset" help="Add value to each Matrix element."/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="axis" type="text" size="10" hidden="true" value="Row"/> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="scale"> <param name="scalevalue" type="text" size="10" value="1.0" label="Matrix Value scaling" help="multiply value with each Matrix element."/> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="axis" type="text" size="10" hidden="true" value="Row"/> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="ln_normalization"> <param name="offsetvalue" type="text" size="10" value="0.0" label="Matrix Values offset" help="Calculate log2 for each Matrix element then add offset."/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="axis" type="select" label="Choose Axis"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="log_normalization"> <param name="offsetvalue" type="text" size="10" value="0.0" label="Matrix Values offset" help="Calculate log10 for each Matrix element then add offset."/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="axis" type="select" label="Choose Axis"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="z_score_normalization"> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="axis" type="select" label="Choose Axis"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="mean_center_normalization"> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="axis" type="select" label="Choose Axis"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="median_center_normalization"> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="axis" type="select" label="Choose Axis"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="transpose"> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="axis" type="text" size="10" hidden="true" value="neither"/> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> <when value="divide_by_sum"> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="axis" type="select" label="Choose Axis"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> </conditional> </when> <when value="Matrix_Multiply"> <conditional name="extra"> <param name="choice" type="select" label="Choose composition type"> <option value="MatrixMultiply">Matrix Multiplication</option> <option value="Corr2Matrices">Correlate two matrices</option> <option value="Corr1Matrix">Correlate one matrix with itself</option> </param> <when value="MatrixMultiply"> <param name="transpose" type="select" label="transpose matrix?"> <option value="y">Transpose matrix</option> <option value="n" selected="true">Do Not transpose matrix</option> </param> <param name="input2" type="data" format="tabular" label="Second Input Matrix size NxP" /> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="axis" type="text" size="10" hidden="true" value="Row"/> </when> <when value="Corr2Matrices"> <param name="transpose" type="select" label="transpose matrix?"> <option value="y">Transpose matrix</option> <option value="n" selected="true">Do Not transpose matrix</option> </param> <param name="input2" type="data" format="tabular" label="Second Input Matrix size NxP" /> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="axis" type="text" size="10" hidden="true" value="Row"/> </when> <when value="Corr1Matrix"> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="thresh" type="float" size="4" value=".05" hidden="true" /> <param name="axis" type="text" size="10" hidden="true" value="Row"/> </when> </conditional> </when> <when value="Matrix_Statistics"> <conditional name="extra"> <param name="choice" type="select" label="Choose Metric to Filter By"> <option value="Histogram">Plot info about either matrix row/column</option> </param> <when value = "Histogram"> <param name="thresh" type="float" size="4" value=".05" label="Filter Threshold (Value above/below row/column will be Removed)" /> <param name="axis" type="select" label="Choose axis to Filter on (Rows or Columns)"> <option value="Row">Row</option> <option value="Column">Column</option> </param> <param name="offsetvalue" type="text" size="10" hidden="true" value="0"/> <param name="scalevalue" type="text" size="10" hidden="true" value="1.0"/> <param name="transpose" type="text" size="10" hidden="true" value="n" /> <param name="input2" type="data" hidden="true" value="$input1" /> </when> </conditional> </when> <!-- <when value="Split_ExcelTabs_IntoFiles"> <description>into separate tab delimited files</description> <param name="input" type="data" format="txt" label="Input Excel.xls or Excel.xlsx file"> </param> <conditional name="extra"> <param name="choice" type="select" label="Select tab" help="Select tab position or name"> <option value="tab_number">Tab number</option> </param> '$extra.tabname' <option value="tab_name">Tab name</option> <option value="all">All tabs in file</option> <option value="1">First tab only</option> </param> <when value="tab_name"> <param name="tabname" type="text" size="20" value="" label="Tab Name" help="Spreadsheet Tab Name"> </param> </when> <when value="tab_number"> <param name="tabnumber" type="text" size="2" value="1" label="Tab position" help="Integer Tab position from left"> </param> </when> </conditional> <outputs> <data name="output_file" format="tabular" label="Output File Name" help="Name based on Input file name and tab name"/> </outputs> </when> --> </conditional> </inputs> <outputs> <data name="output_file" format="tabular" /> </outputs> </tool>