Mercurial > repos > bimib > marea
diff Desktop/Marea/marea.xml @ 30:e88efefbd015 draft
fix changes
author | bimib |
---|---|
date | Tue, 15 Oct 2019 12:21:16 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Desktop/Marea/marea.xml Tue Oct 15 12:21:16 2019 -0400 @@ -0,0 +1,274 @@ +<tool id="MaREA" name="Metabolic Reaction Enrichment Analysis" version="1.0.3"> + <description></description> + <macros> + <import>marea_macros.xml</import> + </macros> + <requirements> + <requirement type="package" version="0.23.0">pandas</requirement> + <requirement type="package" version="1.1.0">scipy</requirement> + <requirement type="package" version="0.10.1">cobra</requirement> + <requirement type="package" version="4.2.1">lxml</requirement> + <requirement type="package" version="0.8.1">svglib</requirement> + <requirement type="package" version="3.4.0">reportlab</requirement> + </requirements> + <command detect_errors="exit_code"> + <![CDATA[ + python $__tool_directory__/marea.py + --rules_selector $cond_rule.rules_selector + #if $cond_rule.rules_selector == 'Custom': + --custom ${cond_rule.Custom_rules} + --yes_no ${cond_rule.cond_map.yes_no} + #if $cond_rule.cond_map.yes_no == 'yes': + --custom_map $cond_rule.cond_map.Custom_map + #end if + #end if + + --tool_dir $__tool_directory__ + --option $cond.type_selector + --out_log $log + + #if $cond.type_selector == 'datasets': + --input_datas + #for $data in $cond.input_Datasets: + ${data.input} + #end for + --names + #for $data in $cond.input_Datasets: + ${data.input_name} + #end for + #if $cond.advanced.choice == 'true': + --none ${cond.advanced.None} + --pValue ${cond.advanced.pValue} + --fChange ${cond.advanced.fChange} + --generate_svg ${cond.advanced.generateSvg} + --generate_pdf ${cond.advanced.generatePdf} + --generate_ras ${cond.advanced.generateRas} + #else + --none true + --pValue 0.05 + --fChange 1.5 + --generate_svg false + --generate_pdf true + --generate_ras false + #end if + #elif $cond.type_selector == 'dataset_class': + --input_data ${input_data} + --input_class ${input_class} + #if $cond.advanced.choice == 'true': + --none ${cond.advanced.None} + --pValue ${cond.advanced.pValue} + --fChange ${cond.advanced.fChange} + --generate_svg ${cond.advanced.generateSvg} + --generate_pdf ${cond.advanced.generatePdf} + --generate_ras ${cond.advanced.generateRas} + #else + --none true + --pValue 0.05 + --fChange 1.5 + --generate_svg false + --generate_pdf true + --generate_ras false + #end if + #end if + #if $cond.type_selector == 'datasets_rasonly': + --input_datas ${input_Datasets} + --single_ras_file $ras_single + --none ${cond.advanced.None} + #end if + ]]> + </command> + + <inputs> + <conditional name="cond_rule"> + <expand macro="options"/> + <when value="HMRcore"> + </when> + <when value="Recon"> + </when> + <when value="Custom"> + <param name="Custom_rules" type="data" format="tabular, csv, tsv, xml" label="Custom rules" /> + <conditional name="cond_map"> + <param name="yes_no" type="select" label="Custom map? (optional)"> + <option value="no" selected="true">no</option> + <option value="yes">yes</option> + </param> + <when value="yes"> + <param name="Custom_map" argument="--custom_map" type="data" format="xml, svg" label="custom-map.svg"/> + </when> + <when value="no"> + </when> + </conditional> + </when> + </conditional> + <conditional name="cond"> + <param name="type_selector" argument="--option" type="select" label="Input format:"> + <option value="datasets" selected="true">RNAseq of group 1 + RNAseq of group 2 + ... + RNAseq of group N</option> + <option value="dataset_class">RNAseq of all samples + sample group specification</option> + <option value="datasets_rasonly" selected="true">RNAseq dataset</option> + </param> + <when value="datasets"> + <repeat name="input_Datasets" title="RNAseq" min="2"> + <param name="input" argument="--input_datas" type="data" format="tabular, csv, tsv" label="add dataset" /> + <param name="input_name" argument="--names" type="text" label="Dataset's name:" value="Dataset" help="Default: Dataset" /> + </repeat> + <conditional name="advanced"> + <param name="choice" type="boolean" checked="false" label="Use advanced options?" help="Use this options to choose custom rules for evaluation: pValue, Fold-Change threshold, how to solve (A and NaN) and specify output maps."> + <option value="true" selected="true">No</option> + <option value="false">Yes</option> + </param> + <when value="false"> + </when> + <when value="true"> + <param name="None" argument="--none" type="boolean" truevalue="true" falsevalue="false" checked="true" label="(A and NaN) solved as (A)?" /> + <param name="pValue" argument="--pValue" type="float" size="20" value="0.01" max="1" min="0" label="P-value threshold:" help="min value 0" /> + <param name="fChange" argument="--fChange" type="float" size="20" value="1.2" min="1" label="Fold-Change threshold:" help="min value 1" /> + <param name="generateSvg" argument="--generateSvg" type="boolean" checked="false" label="Generate SVG map" help="should the program generate an editable svg map of the processes?" /> + <param name="generatePdf" argument="--generatePdf" type="boolean" checked="true" label="Generate PDF map" help="should the program return a non editable (but displayble) pdf map of the processes?" /> + <param name="generateRas" argument="--generateRas" type="boolean" checked="false" label="Generate Reaction Activity Score for each table" help="Generate Reaction Activity Score for each table" /> + </when> + </conditional> + </when> + <when value="datasets_rasonly"> + <param name="input_Datasets" argument="--input_datas" type="data" format="tabular, csv, tsv" label="add dataset" /> + <param name="input_name" argument="--names" type="text" label="Dataset's name:" value="Dataset" help="Default: Dataset" /> + <param name="None" argument="--none" type="boolean" truevalue="true" falsevalue="false" checked="true" label="(A and NaN) solved as (A)?" /> + </when> + <when value="dataset_class"> + <param name="input_data" argument="--input_data" type="data" format="tabular, csv, tsv" label="RNAseq of all samples" /> + <param name="input_class" argument="--input_class" type="data" format="tabular, csv, tsv" label="Sample group specification" /> + <conditional name="advanced"> + <param name="choice" type="boolean" checked="false" label="Use advanced options?" help="Use this options to choose custom rules for evaluation: pValue, Fold-Change threshold, how to solve (A and NaN) and specify output maps."> + <option value="true" selected="true">No</option> + <option value="false">Yes</option> + </param> + <when value="false"> + </when> + <when value="true"> + <param name="None" argument="--none" type="boolean" truevalue="true" falsevalue="false" checked="true" label="(A and NaN) solved as (A)?" /> + <param name="pValue" argument="--pValue" type="float" size="20" value="0.01" max="1" min="0" label="P-value threshold:" help="min value 0" /> + <param name="fChange" argument="--fChange" type="float" size="20" value="1.2" min="1" label="Fold-Change threshold:" help="min value 1" /> + <param name="generateSvg" argument="--generateSvg" type="boolean" checked="false" label="Generate SVG map" help="should the program generate an editable svg map of the processes?" /> + <param name="generatePdf" argument="--generatePdf" type="boolean" checked="true" label="Generate PDF map" help="should the program return a non editable (but displayble) pdf map of the processes?" /> + <param name="generateRas" argument="--generateRas" type="boolean" checked="false" label="Generate Reaction Activity Score for each table" help="Generate Reaction Activity Score for each table" /> + </when> + </conditional> + </when> + </conditional> + + + + + </inputs> + + <outputs> + <data format="txt" name="log" label="MaREA - Log" /> + <data format="tabular" name="ras_single" label="MaREA - RAS - ${cond.input_name}"> + <filter>cond['type_selector'] == "datasets_rasonly"</filter> + </data> + <collection name="results" type="list" label="MaREA - Results"> + <filter>cond['type_selector'] == "datasets" or cond['type_selector'] == "dataset_class"</filter> + <discover_datasets pattern="__name_and_ext__" directory="result"/> + </collection> + <collection name="ras" type="list" label="MaREA - RAS list" format_source="tabular"> + <filter>cond['type_selector'] != "datasets_rasonly" and cond['advanced']['choice'] and cond['advanced']['generateRas']</filter> + <discover_datasets pattern="__name_and_ext__" directory="ras" format="tabular"/> + </collection> + + </outputs> + <tests> + <test> + <param name="pValue" value="0.56"/> + <output name="log" file="log.txt"/> + </test> + </tests> + <help> +<![CDATA[ + +What it does +------------- + +This tool analyzes RNA-seq dataset(s) as described in Graudenzi et al."`MaREA`_: Metabolic feature extraction, enrichment and visualization of RNAseq data" bioRxiv (2018): 248724. + +Accepted files are: + - option 1) two or more RNA-seq datasets, each referring to samples in a given condition/class. The user can specify a label for each class (as e.g. "*classA*" and "*classB*"); + - option 2) one RNA dataset and one class-file specifying the class/condition each sample belongs to. + +Optional files: + - custom GPR (Gene-Protein-Reaction) rules. Two accepted formats: + + * (Cobra Toolbox and CobraPy compliant) xml of metabolic model; + * .csv file specifyig for each reaction ID (column 1) the corresponding GPR rule (column 2). + - custom svg map. Graphical elements must have the same IDs of reactions. See HmrCore svg map for an example. + +The tool generates: + 1) a tab-separated file: reporting fold-change and p-values of reaction activity scores (RASs) between a pair of conditions/classes; + 2) a metabolic map file (downlodable as .svg): visualizing up- and down-regulated reactions between a pair of conditions/classes; + 3) a log file (.txt). + +RNA-seq datasets format: tab-separated text files, reporting the expression level (e.g., TPM, RPKM, ...) of each gene (row) for a given sample (column). Header: sample ID. + +Class-file format: each row of the class-file reports the sample ID (column1) and the label of the class/condition the sample belongs to (column 2). + +To calculate P-Values and Fold-Changes and to generate maps, comparisons are performed for each possible pair of classes. + +Output files will be named as classA_vs_classB. Reactions will conventionally be reported as up-regulated (down-regulated) if they are significantly more (less) active in class having label "classA". + + +Example input +------------- + +**"Custom Rules"** option: + +Custom Rules Dastaset: + +@CUSTOM_RULES_EXEMPLE@ + +**"RNAseq of group 1 + RNAseq of group 2 + ... + RNAseq of group N"** option: + +RNA-seq Dataset 1: + +@DATASET_EXEMPLE1@ + +RNA-seq Dataset 2: + +@DATASET_EXEMPLE2@ + +**"RNAseq of all samples + sample group specification"** option: + +RNA-seq Dataset: + +@DATASET_EXEMPLE1@ + +Class-file: + ++------------+------------+ +| Patient_ID | class | ++============+============+ +| TCGAAA3529 | MSI | ++------------+------------+ +| TCGAA62671 | MSS | ++------------+------------+ +| TCGAA62672 | MSI | ++------------+------------+ + +| + +.. class:: infomark + +**TIP**: If your data is not TAB delimited, use `Convert delimiters to TAB`_. + +.. class:: infomark + +**TIP**: If your dataset is not split into classes, use `MaREA cluster analysis`_. + +@REFERENCE@ + +.. _MaREA: https://www.biorxiv.org/content/early/2018/01/16/248724 +.. _Convert delimiters to TAB: https://usegalaxy.org/?tool_id=Convert+characters1&version=1.0.0&__identifer=6t22teyofhj +.. _MaREA cluster analysis: http://link del tool di cluster.org + +]]> + </help> + <expand macro="citations" /> +</tool> +