view mfassignr_mfassign.xml @ 4:4422c60a4b71 draft

planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/mfassignr commit 4bd188e61f09431c0b7e73b35fb8ccf5ee7af6ac
author recetox
date Mon, 21 Oct 2024 09:06:40 +0000
parents 5aa9380f397b
children 0492fff60960
line wrap: on
line source

<tool id="mfassignr_mfassign" name="MFAssignR MFAssign" version="@TOOL_VERSION@+galaxy0" profile="23.0">
    <description>Molecular formula assignment.</description>
    <macros>
        <import>macros.xml</import>
        <import>help.xml</import>
    </macros>
    <edam_topics>
        <edam_topic>topic_3172</edam_topic>    
    </edam_topics>
    <expand macro="creator" />
    <expand macro="requirements" />
    <command detect_errors="exit_code"><![CDATA[
        Rscript '${run_script}'
    ]]></command>
    <configfiles>
        <configfile name="run_script"><![CDATA[
        mono <- read.delim("$input_mono", sep="\t")
        #if $input_iso
        iso <- read.delim("$input_iso", sep="\t")
        #end if
        SN = $sn_ratio * $kmdn

        MF_assign <- MFAssignR::MFAssign(
            peaks = mono,
            #if $input_iso
            isopeaks = iso,
            #end if
            ionMode = "$ionmode",
            lowMW = $lowMW,
            highMW = $highMW,
            ppm_err = $ppm_err,
            SN = SN
        )

        write.table(MF_assign[['Unambig']], file = '$Unambig', row.names= FALSE, sep = "\t")
        write.table(MF_assign[['Ambig']], file = '$Ambig', row.names= FALSE, sep = "\t")
        write.table(MF_assign[['None']], file = '$None', row.names= FALSE, sep = "\t")

        dir.create("plots")
        ggplot2::ggsave(filename = file.path("plots", "msassign.png"), MF_assign[['MSAssign']])
        ggplot2::ggsave(filename = file.path("plots", "errorMZ.png"), MF_assign[['Error']])
        ggplot2::ggsave(filename = file.path("plots", "MSgroups.png"), MF_assign[['MSgroups']])
        ggplot2::ggsave(filename = file.path("plots", "VK.png"), MF_assign[['VK']])

        ]]></configfile>
    </configfiles>
    <inputs>
        <param name="input_mono" type="data" format="tabular" label="Data frame of monoisotopic masses"
               help= "Data frame containing recalibrated monoisotopic masses, output from the Recal function"/>
        <param name="input_iso" optional="true" type="data" format="tabular" label="Data frame of isotopic masses"
               help= "Data frame containing recalibrated isotopic masses, output from the Recal function"/>
        <expand macro="mfassign_param"/>
    </inputs>
    <outputs>
        <data name="Unambig" format="tabular" label="Unambiguous assignments by ${tool.name} on ${on_string}"/>
        <data name="Ambig" format="tabular" label="Ambiguous assignments by ${tool.name} on ${on_string}"/>
        <data name="None" format="tabular" label="Unassigned masses by ${tool.name} on ${on_string}"/>
        <collection format="png" type="list" name="plots" label="Plots generated by ${tool.name} on ${on_string}">
            <discover_datasets pattern="__designation_and_ext__" ext="png" directory="plots" />
        </collection>
    </outputs>
    <tests>
        <test>
            <param name="input_mono" value="isofiltr/mono_out.tabular"/>
            <param name="input_iso" value="isofiltr/iso_out.tabular"/>
            <param name="kmdn" value="3294705.63963789"/>
            <output name="Unambig" file="mfassign/unambig.tabular"/>
            <output name="Ambig">
                <assert_contents>
                    <has_n_lines n="1"/>
                    <has_n_columns n="53"/>
                </assert_contents>
            </output>
            <output name="None">
                <assert_contents>
                    <has_n_lines n="5015"/>
                    <has_n_columns n="3"/>
                </assert_contents>
            </output>
            <output_collection name="plots" type="list" count="4">
                <element name="MSgroups">
                    <assert_contents>
                        <has_size size="114675" delta="100"/>
                    </assert_contents>
                </element>
                <element name="VK">
                    <assert_contents>
                        <has_size size="424518" delta="100"/>
                    </assert_contents>
                </element>
                <element name="errorMZ">
                    <assert_contents>
                        <has_size size="548366" delta="100"/>
                    </assert_contents>
                </element>
                <element name="msassign">
                    <assert_contents>
                        <has_size size="84901" delta="100"/>
                    </assert_contents>
                </element>
            </output_collection>
        </test>    
    </tests>
    <help><![CDATA[
        @MFASSIGN_HELP@

        @GENERAL_HELP@
    ]]></help>
    <expand macro="citations" />
</tool>