view shuffleBed.xml @ 37:ce3c7f062223 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/bedtools commit 8e072170dd8f7b68fabbf29b1b0d7d14974b8b22"
author iuc
date Tue, 23 Mar 2021 20:23:14 +0000
parents dde39ba9c031
children 3e38c9b3214f
line wrap: on
line source

<tool id="bedtools_shufflebed" name="bedtools ShuffleBed" version="@TOOL_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
    #if str($add_bed.overlap)
        -f $add_bed.overlap
    #end if
#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 name="inputA" argument="-i" type="data" format="@STD_BEDTOOLS_INPUTS@" label="@STD_BEDTOOLS_INPUT_LABEL@ file"/>
        <param argument="-bedpe" type="boolean" truevalue="-bedpe" falsevalue="" checked="false" label="The file is in BEDPE format" />
        <expand macro="input_conditional_genome_file" />
        <param argument="-chrom" type="boolean" truevalue="-chrom" falsevalue="" checked="false"
            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." />
        <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 argument="-excl" type="data" format="bed" label="Choose File" />
                <expand macro="fraction" name="overlap" argument="-f" label="Maximum overlap (as a fraction of the -i feature) with an -excl feature that is tolerated before searching for a new, randomized locus" />
            </when>
            <when value="be">
                <param argument="-incl" type="data" format="bed" label="Choose File" />
            </when>
        </conditional>
        <param name="chromfirst" argument="-chromFirst" type="boolean" truevalue="-chromFirst" falsevalue="" checked="false"
            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." />
        <param name="maxtries" argument="-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" />
        <param name="no_overlap" argument="-noOverlapping" type="boolean" truevalue="-noOverlapping" falsevalue="" checked="false"
            label="Don’t allow shuffled intervals to overlap" />
        <param name="allow_beyond" argument="-allowBeyondChromEnd" type="boolean" truevalue="-allowBeyondChromEnd" falsevalue="" checked="false"
            label="Allow the original the length of the original records to extebd beyond the length of the chromosome" />
    </inputs>
    <outputs>
        <data name="output" format="bed" />
    </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" />
            <conditional name="add_bed">
                <param name="add_bed_select" value="not_be"/>
                <param name="excl" value="shuffleBed2.bed" ftype="bed" />
            </conditional>
            <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="3" />
            <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>