view salmonquantmerge.xml @ 10:42628a3010d4 draft default tip

planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/salmon commit 3b330b885fde7c730c5d121f6b37e1d99d3721e1
author bgruening
date Fri, 31 Oct 2025 19:16:59 +0000
parents 58b9ef13fcca
children
line wrap: on
line source

<tool id="salmonquantmerge" name="Salmon quantmerge" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE_VERSION@">
    <description>Merge multiple quantification results into a single file</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="xrefs"/>
    <expand macro="requirements"/>
    <expand macro="version_command"/>
    <command detect_errors="exit_code"><![CDATA[
    #import re

    #for $counter, $input_data in enumerate($quantfiles):
        rank_of_series=$counter
        mkdir ${counter}.quantmerge &&
        ln -s '$input_data.quants' ${counter}.quantmerge/quant.sf &&
    #end for
    salmon --no-version-check quantmerge
        --quants *.quantmerge
        --names
        #for $counter, $input_data in enumerate($quantfiles):
            #if $input_data.names and re.sub(' ', '', '$input_data.names') != '':
                '${input_data.names}'
            #else:
                #set $identifier=re.sub('[^\w\-\s]', '_', str($input_data.quants.element_identifier))
                "$identifier"
            #end if
        #end for
        --column '${column}'
        ${genes}
        #if $missing:
            --missing '${missing}'
        #end if
        -o qmergeout.tab
    ]]></command>
    <inputs>
        <repeat name="quantfiles" title="Quant file and names">
            <param argument="--quants" type="data" format="tsv,tabular" label="Salmon quant tabular output files"/>
            <param argument="--names" type="text" label="One-word sample names" optional="True"/>
        </repeat>
        <param argument="--column" type="select" label="Columns" help="Name of columns that will be merged in the output file">
            <option value="len" selected="True">Length</option>
            <option value="elen">Effective Length</option>
            <option value="tpm">Transcripts per Million</option>
            <option value="numreads">NumReads</option>
        </param>
        <param argument="--genes" type="boolean" truevalue="--genes" falsevalue="" checked="False" label="Genes" help="Use gene quantifications instead of transcript"/>
        <param argument="--missing" type="integer" label="Missing" optional="True" help="The value of missing values"/>
    </inputs>
    <outputs>
        <data name="mergedfile" format="tabular" label="${tool.name} on ${on_string}" from_work_dir="qmergeout.tab"/>
    </outputs>
    <tests>
        <test expect_num_outputs="1">
            <repeat name="quantfiles">
                <param name="quants" value="quant2.sf"/>
                <param name="names" value="asdf"/>
            </repeat>
            <repeat name="quantfiles">
                <param name="quants" value="quant1.sf"/>
                <param name="names" value="qwerty"/>
            </repeat>
            <output name="mergedfile" ftype="tabular">
                <assert_contents>
                    <has_text text="qwerty"/>
                    <has_text text="NM_014621"/>
                    <has_n_columns n="3"/>
                </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[
        @salmonhelp@
    ]]></help>
    <expand macro="citations"/>
</tool>