view MT2MQ.xml @ 2:9c8e7137d331 draft

"planemo upload commit 59afcdaf7afdf574c475f0faae73127f0e563328"
author galaxyp
date Wed, 12 Aug 2020 17:36:53 -0400
parents 6bee94458567
children
line wrap: on
line source

<tool id="mt2mq" name="MT2MQ" version="1.1.0">
    <description>Tool to prepare metatranscriptomic outputs from ASaiM for Metaquantome</description>
    <requirements>
        <requirement type="package" version="1.2.1">r-tidyverse</requirement>
        <requirement type="package" version="0.9.97">r-taxize</requirement>
    </requirements>
    <command detect_errors="exit_code"><![CDATA[

#if $options.mode == "f" or $options.mode == "ft":
    Rscript --vanilla '$__tool_directory__/MT2MQ.R' '$options.input_files' '$options.mode' '$options.ontology' '$int_output' '$func_output' '$tax_output'
#elif $options.mode == "t":
    mkdir in_dir
    #for $input in $options.input_files:
        && cp '$input' 'in_dir/${input.name.rsplit('.',1)[0]}'
    #end for
    && Rscript --vanilla '$__tool_directory__/MT2MQ.R' in_dir t NA '$int_output' '$func_output' '$tax_output'
#end if

    ]]>
    </command>
    
    <inputs>
        <conditional name="options">
            <param type="select" display="radio" name="mode" label="Mode">
                <option value="f">Functional</option>
                <option value="t" selected="true">Taxonomic</option>
                <option value="ft">Functional-Taxonomic</option>
            </param>
            <when value="t">
                <param name="ontology" type="hidden" value="NA" />
                <param type="data" name="input_files" format="tsv,tabular,txt" label="Files from ASaiM for all samples (named after sample)" multiple="true" />
            </when>
            <when value="f">
                <param type="select" name="ontology" label="GO namespace" multiple="true" optional="false">
                    <option value="molecular_function">molecular function</option>
                    <option value="biological_process">biological proces</option>
                    <option value="cellular_component">cellular component</option>
                </param>
                <param type="data" name="input_files" format="tsv,tabular,txt" label="File from HUMAnN2 after regrouping, renaming, joining, and renormalizing" />
            </when>
            <when value="ft">
                <param type="select" name="ontology" label="GO namespace" multiple="true" optional="false">
                    <option value="molecular_function">molecular function</option>
                    <option value="biological_process">biological proces</option>
                    <option value="cellular_component">cellular component</option>
                </param>
                <param type="data" name="input_files" format="tsv,tabular,txt" label="File from HUMAnN2 after regrouping, renaming, joining, and renormalizing" />
            </when>
        </conditional>
    </inputs>
    
    <outputs>
        <data name="int_output" format="tabular" label="${options.mode}_int.tabular"/>
        <data name="func_output" format="tabular" label="func.tabular">
            <filter>options['mode'] == "f"</filter>
        </data>
        <data name="tax_output" format="tabular" label="tax.tabular">
            <filter>options['mode'] == "t"</filter>
        </data>

    </outputs>
    
    
    <tests>
        <test>
            <conditional name="options">
		<param name="mode" value="t"/>
                <param name="input_files" value="T4A.tsv,T4B.tsv,T4C.tsv,T7A.tsv,T7B.tsv,T7C.tsv" ftype="tsv"/>
                <param name="ontology" value="NA"/>
            </conditional>
            <output name="int_output">
                <assert_contents>
                    <has_text text="rank"/>
                    <has_text text="genus"/>
                    <has_text text="Clostridium"/>
                </assert_contents>
            </output>
        </test>
        <test>
            <conditional name="options">
		<param name="mode" value="f"/>
                <param name="input_files" value="T4T7_func.tsv" ftype="tsv"/>
                <param name="ontology" value="molecular_function"/>
            </conditional>
            <output name="int_output">
                <assert_contents>
                    <has_text text="namespace"/>
                    <has_text text="molecular_function"/>
                    <has_text text="0000014"/> 
                </assert_contents>
            </output>
        </test>
        <test>
            <conditional name="options">
		<param name="mode" value="ft"/>
                <param name="input_files" value="T4T7_func.tsv" ftype="tsv"/>
                <param name="ontology" value="biological_process"/>
            </conditional>
            <output name="int_output">
                <assert_contents>
                    <has_text text="namespace"/>
                    <has_text text="genus"/>
                    <has_text text="biological_process"/>
                    <has_text text="Clostridium"/>
                </assert_contents>
            </output>
        </test>
    </tests>
    
    
    
    
    <help><![CDATA[

**MT2MQ**: Metatranscriptomics to Metaquantome
----------------------------------------------------

MT2MQ is a tool to prepare metatrascriptomic results from ASaiM for further analysis with MetaQuantome, which currently only supports metaproteomic data. This tool has three modes:

- **Taxonomic**: takes in genus-level MetaPhlAn2 results for each sample. The input files should be named as the sample. 

	- Output: a taxonomy file and an intensity file to use in Metaquantome's taxonomy mode. The "peptide" column name is "id" and the taxon column name is "tax".

- **Functional**: takes in a single file of HUMAnN2 results, regrouped and renamed to GO terms, with all samples joined together into one table, and renormalized to CPM. See the MT2MQ functional workflow for these processing steps. User can choose which GO namespace(s) to include.

	- Output: a function file and an intensity file to use in Metaquantome's functional mode. The "peptide" column name is "id" and the functional column name is "gos". 

- **Functional/taxonomic**: takes the same input as the functional mode. User can choose which GO namespace(s) to include.

	- Output: a single tabular file including all GO terms and the taxa which express them and their abundances for each sample. This file *cannot* be used as input for Metaquantome.

    ]]></help>
    
    <citations>
        <citation type="bibtex">
            @misc{MT2MQ, 
            author={Crane, Marie},
            year={2020},
            title={Metatranscriptomics to MetaQuantome}
            }
        </citation>
    </citations>
</tool>