view bedtools-galaxy/intersectBed_bam.xml @ 0:26c21c634c51

Uploaded
author aaronquinlan
date Thu, 29 Dec 2011 10:20:07 -0500
parents
children
line wrap: on
line source

<tool id="bedtools_intersectbed_bam" name="Intersect BAM alignments with intervals in another files" version="0.1.0">
<description>
</description>
    
<requirements>
    <requirement type="binary">intersectBed</requirement>
</requirements>

<command>
    intersectBed
    -abam '$inputA'
    -b '$inputB'
    $split
    $strand
    #if str($fraction):
      -f      $fraction
    #end if
    $reciprocal
    $invert
    &gt; '$output'
</command>

<inputs>
    <param format="bam" name="inputA" type="data" label="Which alignments in this BAM file">
          <validator type="unspecified_build" />
    </param>
    <param format="bed" name="inputB" type="data" label="overlap intervals in this BED file?">
          <validator type="unspecified_build" />
    </param>
    <param name="split" type="boolean" checked="true" truevalue="-split" falsevalue="" label="Treat split/spliced BAM or BED12 entries as distinct BED intervals when computing coverage." help="If set, the coverage will be calculated based the spliced intervals only. For BAM files, this inspects the CIGAR N operation to infer the blocks for computing coverage. For BED12 files, this inspects the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12). If this option is not set, coverage will be calculated based on the interval's START/END coordinates, and would include introns in the case of RNAseq data." />
    
    <param name="strand" type="select" label="Calculate coverage based on">
        <option value="">Overlaps on either strand</option>
        <option value="-s">Only overlaps occurring on the **same** strand.</option>
        <option value="-S">Only overlaps occurring on the **opposite** strand.</option>
    </param>
    
    <param name="fraction" type="text" optional="true" label="Minimum overlap required as a fraction of the BAM alignment" help="Alignments are only retained if the overlap with the an interval in the BED file comprises at least this fraction of the BAM alignment's length.  For example, to require that the overlap affects 50% of the BAM alignment, use 0.50"/>
    
    <param name="reciprocal" type="boolean" checked="false" truevalue="-r" falsevalue="" label="Require reciprocal overlap." help="If set, the overlap between the BAM alignment and the BED interval must affect the above fraction of both the alignment and the BED interval." />
    
    <param name="invert" type="boolean" checked="false" truevalue="-v" falsevalue="" label="Report only those alignments that **do not** overlap the BED file."/>
    
</inputs>

<outputs>
    <data format="bam" name="output" metadata_source="inputA" label="Intersection of ${inputA.name} and ${inputB.name}"/>
</outputs>

<help>

**What it does**

This tool creates a new BAM alignment file based on alignments that overlap (or optionally, those that do not overlap) intervals in another BED file.  Example usage would be to cull a BAM file from an exome capture experiment to include on the "on-target" alignments. 

.. class:: infomark

Note that each BAM alignment is treated individually.  Therefore, if one end of a paired-end alignment overlaps an interval in the BED file, yet the other end does not, the output file will only include the overlapping end.

.. class:: infomark

Note that a BAM alignment will be sent to the output file **once** even if it overlaps more than one interval in the BED file.

.. class:: warningmark

This tool requires that `bedtools`__ has been installed on your system.

------

This tool is part of the `bedtools package`__ from the `Quinlan laboratory`__. If you use this tool, please cite `Quinlan AR, and Hall I.M. BEDTools: A flexible framework for comparing genomic features. Bioinformatics, 2010, 26, 6.`__

    .. __: http://code.google.com/p/bedtools/
    .. __: http://code.google.com/p/bedtools/
    .. __: http://cphg.virginia.edu/quinlan/
    .. __: http://bioinformatics.oxfordjournals.org/content/26/6/841.short

</help>
</tool>