view dexseq_count.xml @ 2:6e8b61c54ff3 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/dexseq commit 0a56599c36b4968095ec5a3cb589f94fb139466c
author iuc
date Sun, 28 Jan 2018 04:04:39 -0500
parents f1c406f9554c
children f89c9b25feb4
line wrap: on
line source

<tool id="dexseq_count" name="DEXSeq-Count" version="@VERSION@.0">
    <description>Prepare and count exon abundancies from RNA-seq data</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements">
        <requirement type="package" version="0.9.1">htseq</requirement>
    </expand>
    <stdio>
        <!-- Anything other than zero is an error -->
        <exit_code range="1:" />
        <exit_code range=":-1" />
        <!-- In case the return code has not been set propery check stderr too -->
        <regex match="Error:" />
        <regex match="Exception:" />
    </stdio>
    <command><![CDATA[
#if $mode.mode_select == "prepare":
    dexseq_prepare_annotation.py
        -r $mode.aggregate
        '$mode.gtffile'
        '$flattened_gtf_out'
#elif $mode.mode_select == "count":
    dexseq_count.py
        -f bam
        -p $mode.paired
        -s $mode.stranded
        -a $mode.qual
        -r $mode.order
        $mode.flattened_gtf_in
        '$mode.bamfile'
        '$counts_file'
#end if
    ]]></command>
    <inputs>
        <conditional name="mode">
            <param name="mode_select" type="select" label="Mode of operation">
                <option value="prepare">Prepare annotation</option>
                <option value="count">Count reads</option>
            </param>
            <when value="prepare">
                <param name="gtffile" type="data" format="gff" label="GTF file"/>
                <param name="aggregate" type="boolean" checked="True" truevalue="yes" falsevalue="no"
                    label="Aggregate genes with exons?"
                    help="Indicates whether two or more genes sharing an exon should be merged into an 'aggregate gene'. If 'no', the exons that can not be assiged to a single gene are ignored."/>
            </when>
            <when value="count">
                <param name="bamfile" type="data" format="bam" label="Input bam file"/>
                <param name="flattened_gtf_in" type="data" format="gff" label="DEXSeq compatible GTF file" help="Created by prepare mode"/>
                <param name="paired" type="boolean" checked="True" truevalue="yes" falsevalue="no" label="Is libray paired end?"/>
                <param name="stranded" type="select" label="Is library strand specific?">
                    <option value="no">No</option>
                    <option value="yes">Yes</option>
                    <option value="reverse">Yes, but reverse</option>
                </param>
                <param name="qual" type="integer" value="10" label="Skip all reads with alignment quality lower than the given minimum value"/>
                <param name="order" type="select" label="Sorting order of alignments" help="If you generated your alignments using tophat, they are by default position sorted. Ignored for single-end data">
                    <option value="pos">By position</option>
                    <option value="name">By name</option>
                </param>
            </when>
        </conditional>
    </inputs>

    <outputs>
        <data format="tabular" name="counts_file" label="DEXSeq count reads on ${on_string}">
            <filter>mode['mode_select'] == 'count'</filter>
        </data>
        <data format="gtf" name="flattened_gtf_out" label="DEXSeq prepare annotation on ${on_string}">
            <filter>mode['mode_select'] == 'prepare'</filter>
        </data>
    </outputs>

    <tests>
        <test>
            <param name="mode_select" value="prepare" />
            <param name="gtffile" ftype="gff" value="original.gtf"/>
            <param name="aggregate" value="True"/>
            <output name="flattened_gtf_out" ftype="gtf" compare="sim_size" file="flattened.gtf"/>
        </test>
    </tests>

    <help><![CDATA[
.. class:: infomark

**What it does**

The main goal of this tool is to count the number of reads/fragments per exon of each gene in RNA-seq samples. In addition, it also prepares your annotation GTF file, making it compatible for counting.


**Inputs**

Mode-preprare: Takes a normal gtf file as input. For example from Ensembl database.
Mode-count: Inputs are flattened GTF file and BAM file. The flattened GTF file can be generated from 'prepare' mode of this tool.

**Output**

Mode-prepare: Flattened GTF file that contains only exons with corresponding gene ids from given GTF file. Sometimes two or more genes sharing an exon will be merged into an 'aggregate gene' if the aggregate option was used.
Mode-count: Two column tab-delimited file with exon ids and their read counts.

.. _DEXSeq: http://master.bioconductor.org/packages/release/bioc/html/DEXSeq.html

    ]]></help>
    <citations>
        <citation type="doi">10.1101/gr.133744.111</citation>
    </citations>
</tool>