view shuffleBed.xml @ 45:a1a923cd89e8 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/bedtools commit d1ee301a39e9830693eedb6ca089456081540f28
author iuc
date Thu, 02 Mar 2023 08:52:08 +0000
parents 07e8b80f278c
children 64e2edfe7a2c
line wrap: on
line source

<tool id="bedtools_shufflebed" name="bedtools ShuffleBed" version="@TOOL_VERSION@+galaxy1" profile="@PROFILE@">
    <description>randomly redistrubute intervals in a genome</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="bio_tools" />
    <expand macro="requirements" />
    <expand macro="stdio" />
    <command><![CDATA[
bedtools shuffle
@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>