view shuffleBed.xml @ 32:4f7a5ccd2ae9 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/bedtools commit fc3616bd1463afef9681cd7c431ac29f79e37e74
author iuc
date Tue, 11 Dec 2018 14:01:26 -0500
parents 95a3b2c25bd1
children dde39ba9c031
line wrap: on
line source

<tool id="bedtools_shufflebed" name="bedtools ShuffleBed" version="@WRAPPER_VERSION@">
    <description>randomly redistrubute intervals in a genome</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements" />
    <expand macro="stdio" />
    <command>
<![CDATA[
        bedtools shuffle
        -g @GENOME_FILE@
        -i '$inputA'
        $bedpe
        #if str($seed.seed_choose) == "True":
            -seed $seed.seed
        #end if
        #if str($add_bed.add_bed_select) == "not_be":
            -excl $add_bed.excl
            -f $add_bed.overlap
        #elif str($add_bed.add_bed_select) == "be":
            -incl $add_bed.incl
        #end if
        $chrom
        $chromfirst
        $no_overlap
        $allow_beyond
        -maxTries $maxtries
        > '$output'
]]>
    </command>
    <inputs>
        <param format="@STD_BEDTOOLS_INPUTS@" name="inputA" type="data" label="@STD_BEDTOOLS_INPUT_LABEL@ file"/>
        <param name="bedpe" type="boolean" label="The file is in BEDPE format" checked="False" truevalue="-bedpe" falsevalue="" />
        <expand macro="input_conditional_genome_file" />
        <param name="chrom" type="boolean" checked="False" truevalue="-chrom" falsevalue=""
            label="Keep features in the input file on the same chromosome"
            help="Solely permute their location on the chromosome. By default, both the chromosome and position are randomly chosen. (-chrom)" />
        <expand macro="seed" />
        <conditional name="add_bed">
            <param name="add_bed_select" type="select" label="Choose an additional BED file">
                <option value="no" selected="True">No additional BED file</option>
                <option value="not_be">Coordinates in which features from -i should not be placed?</option>
                <option value="be">coordinates in which features from -i should be placed?</option>
            </param>
            <when value="no" />
            <when value="not_be">
                <param name="excl" type="data" format="bed" label="Choose File" />
                <expand macro="overlap" />
            </when>
            <when value="be">
                <param name="incl" type="data" format="bed" label="Choose File" />
            </when>
        </conditional>
        <param name="chromfirst" type="boolean" checked="False" truevalue="-chromFirst" falsevalue="" 
            label="Choose chromosome first"
            help="Instead of choosing a position randomly among the entire genome (the default), first choose a chrom randomly, and then choose a random start coordinate on that chrom. This leads to features being ~uniformly distributed among the chroms, as opposed to features being distribute as a function of chrom size. (-chromFirst)" />
        <param name="maxtries" type="integer" value="1000"
            label="Max. number of attempts to find a home for a shuffled interval in the presence of -incl or -excl" help="(-maxTries)" />
        <param name="no_overlap" type="boolean" checked="False" truevalue="-noOverlapping" falsevalue=""
            label="Don’t allow shuffled intervals to overlap" help="(-noOverlapping)" />
        <param name="allow_beyond" type="boolean" checked="False" truevalue="-allowBeyondChromEnd" falsevalue=""
            label="Allow the original the length of the original records to extebd beyond the length of the chromosome" help="(-allowBeyondChromEnd)" />
    </inputs>
    <outputs>
        <data format="bed" name="output" />
    </outputs>
    <tests>
        <test>
            <param name="inputA" value="shuffleBed1.bed" ftype="bed" />
            <param name="genome_file_opts_selector" value="hist" />
            <param name="genome" value="shuffleBed.len" ftype="tabular" />
            <param name="chrom" value="" />
            <param name="seed_choose" value="True" />
            <param name="seed" value="1" />
            <output name="output" file="shuffleBed_result1.bed" ftype="bed" />
        </test>
        <test>
            <param name="inputA" value="shuffleBed1.bed" ftype="bed" />
            <param name="genome_file_opts_selector" value="hist" />
            <param name="genome" value="shuffleBed.len" ftype="tabular" />
            <param name="chrom" value="True" />
            <param name="seed_choose" value="True" />
            <param name="seed" value="1" />
            <output name="output" file="shuffleBed_result2.bed" ftype="bed" />
        </test>
        <test>
            <param name="inputA" value="shuffleBed1.bed" ftype="bed" />
            <param name="genome_file_opts_selector" value="hist" />
            <param name="genome" value="shuffleBed.len" ftype="tabular" />
            <param name="excl" value="shuffleBed2.bed" ftype="bed" />
            <param name="seed_choose" value="True" />
            <param name="seed" value="1" />
            <output name="output" file="shuffleBed_result3.bed" ftype="bed" />
        </test>
        <test>
            <param name="inputA" value="shuffleBed1.bed" ftype="bed" />
            <param name="genome_file_opts_selector" value="hist" />
            <param name="genome" value="shuffleBed.len" ftype="bed" />
            <param name="allow_beyond" value="True" />
            <param name="seed_choose" value="True" />
            <param name="seed" value="1" />
            <output name="output" file="shuffleBed_result4.bed" ftype="bed" />
        </test>
    </tests>
    <help>
<![CDATA[
**What it does**

bedtools shuffle will randomly permute the genomic locations of a feature file among a genome defined in a genome file. One can also provide an “exclusions” @STD_BEDTOOLS_INPUT_LABEL@ file that lists regions where you do not want the permuted features to be placed. For example, one might want to prevent features from being placed in known genome gaps. shuffle is useful as a null basis against which to test the significance of associations of one feature with another.

.. image:: $PATH_TO_IMAGES/shuffle-glyph.png

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