annotate intersectBed.xml @ 4:315929597efb draft

Uploaded
author iuc
date Wed, 07 Jan 2015 12:45:05 -0500
parents 7511823bdea1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
1 <tool id="bedtools_intersectbed" name="Intersect interval files" version="@WRAPPER_VERSION@.0">
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
2 <description></description>
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
3 <macros>
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
4 <import>macros.xml</import>
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
5 </macros>
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
6 <expand macro="requirements" />
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
7 <expand macro="stdio" />
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
8 <command>
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
9 <![CDATA[
315929597efb Uploaded
iuc
parents: 1
diff changeset
10 #set inputBs = '" "'.join( [ str( $file ) for $file in $inputB ] )
315929597efb Uploaded
iuc
parents: 1
diff changeset
11 #set modes = ' '.join( str($overlap_mode).split(',') )
315929597efb Uploaded
iuc
parents: 1
diff changeset
12
315929597efb Uploaded
iuc
parents: 1
diff changeset
13 bedtools intersect
315929597efb Uploaded
iuc
parents: 1
diff changeset
14 #if $inputA.ext == "bam":
315929597efb Uploaded
iuc
parents: 1
diff changeset
15 -abam "${inputA}"
315929597efb Uploaded
iuc
parents: 1
diff changeset
16 #else:
315929597efb Uploaded
iuc
parents: 1
diff changeset
17 -a "${inputA}"
315929597efb Uploaded
iuc
parents: 1
diff changeset
18 #end if
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
19
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
20 -b "${inputBs}"
315929597efb Uploaded
iuc
parents: 1
diff changeset
21 $split
315929597efb Uploaded
iuc
parents: 1
diff changeset
22 $strand
315929597efb Uploaded
iuc
parents: 1
diff changeset
23 #if str($fraction) != "None" and str($fraction):
315929597efb Uploaded
iuc
parents: 1
diff changeset
24 -f "${fraction}"
315929597efb Uploaded
iuc
parents: 1
diff changeset
25 #end if
315929597efb Uploaded
iuc
parents: 1
diff changeset
26 $reciprocal
315929597efb Uploaded
iuc
parents: 1
diff changeset
27 $invert
315929597efb Uploaded
iuc
parents: 1
diff changeset
28 $once
315929597efb Uploaded
iuc
parents: 1
diff changeset
29 $header
315929597efb Uploaded
iuc
parents: 1
diff changeset
30 $modes
315929597efb Uploaded
iuc
parents: 1
diff changeset
31 > "${output}"
315929597efb Uploaded
iuc
parents: 1
diff changeset
32 ]]>
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
33 </command>
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
34 <inputs>
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
35 <param format="bed,bam,vcf,gff,gff3" name="inputA" type="data" label="BED/VCF/GFF/BAM file"/>
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
36 <param format="bed,bam,gff,vcf,gff3" name="inputB" type="data" multiple="True" label="One or more BAM/BED/GFF/VCF file(s)"/>
315929597efb Uploaded
iuc
parents: 1
diff changeset
37 <expand macro="strand2" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
38 <param name="overlap_mode" type="select" multiple="True" label="What should be written to the output file?">
315929597efb Uploaded
iuc
parents: 1
diff changeset
39 <option value="-wa" selected="True">Write the original entry in A for each overlap (-wa)</option>
315929597efb Uploaded
iuc
parents: 1
diff changeset
40 <option value="-wb">Write the original entry in B for each overlap. Useful for knowing what A overlaps. Restricted by the fraction- and reciprocal option (-wb)</option>
315929597efb Uploaded
iuc
parents: 1
diff changeset
41 <option value="-wo">Write the original A and B entries plus the number of base pairs of overlap between the two features. Only A features with overlap are reported. Restricted by the fraction- and reciprocal option (-wo)</option>
315929597efb Uploaded
iuc
parents: 1
diff changeset
42 <option value="-wao">Write the original A and B entries plus the number of base pairs of overlap between the two features. However, A features w/o overlap are also reported with a NULL B feature and overlap = 0. Restricted by the fraction- and reciprocal option (-wao)</option>
315929597efb Uploaded
iuc
parents: 1
diff changeset
43 <option value="-loj">Perform a "left outer join". That is, for each feature in A report each overlap with B. If no overlaps are found, report a NULL feature for B (-loj)</option>
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
44 </param>
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
45
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
46 <expand macro="split" />
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
47 <!-- -f -->
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
48 <param name="fraction" type="text"
315929597efb Uploaded
iuc
parents: 1
diff changeset
49 label="Minimum overlap required as a fraction of the BAM alignment"
315929597efb Uploaded
iuc
parents: 1
diff changeset
50 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. (-f)"/>
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
51 <!-- -r -->
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
52 <expand macro="reciprocal" />
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
53 <!-- -v -->
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
54 <param name="invert" type="boolean" checked="false" truevalue="-v" falsevalue=""
315929597efb Uploaded
iuc
parents: 1
diff changeset
55 label="Report only those alignments that **do not** overlap the BED file"
315929597efb Uploaded
iuc
parents: 1
diff changeset
56 help="(-v)"/>
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
57 <!-- -u -->
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
58 <param name="once" type="boolean" checked="false" truevalue="-u" falsevalue=""
315929597efb Uploaded
iuc
parents: 1
diff changeset
59 label="Write the original A entry _once_ if _any_ overlaps found in B."
315929597efb Uploaded
iuc
parents: 1
diff changeset
60 help="Just report the fact >=1 hit was found. (-u)" />
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
61 <!-- -c -->
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
62 <param name="count" type="boolean" checked="false" truevalue="-c" falsevalue=""
315929597efb Uploaded
iuc
parents: 1
diff changeset
63 label="For each entry in A, report the number of overlaps with B."
315929597efb Uploaded
iuc
parents: 1
diff changeset
64 help="Reports 0 for A entries that have no overlap with B. (-c)" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
65 <expand macro="print_header" />
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
66 </inputs>
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
67 <outputs>
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
68 <data format_source="inputA" name="output" metadata_source="inputA"/>
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
69 </outputs>
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
70 <tests>
315929597efb Uploaded
iuc
parents: 1
diff changeset
71 <test>
315929597efb Uploaded
iuc
parents: 1
diff changeset
72 <param name="inputA" value="intersectBed1.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
73 <param name="inputB" value="intersectBed2.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
74 <param name="overlap_mode" value="-wa" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
75 <param name="split" value="False" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
76 <output name="output" file="intersectBed_result1.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
77 </test>
315929597efb Uploaded
iuc
parents: 1
diff changeset
78 <test>
315929597efb Uploaded
iuc
parents: 1
diff changeset
79 <param name="inputA" value="intersectBed1.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
80 <param name="inputB" value="intersectBed2.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
81 <param name="overlap_mode" value="-wa,-wb" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
82 <param name="split" value="False" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
83 <output name="output" file="intersectBed_result2.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
84 </test>
315929597efb Uploaded
iuc
parents: 1
diff changeset
85 <test>
315929597efb Uploaded
iuc
parents: 1
diff changeset
86 <param name="inputA" value="intersectBed1.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
87 <param name="inputB" value="intersectBed2.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
88 <param name="invert" value="True" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
89 <param name="split" value="False" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
90 <output name="output" file="intersectBed_result3.bed" ftype="bed" />
315929597efb Uploaded
iuc
parents: 1
diff changeset
91 </test>
315929597efb Uploaded
iuc
parents: 1
diff changeset
92 </tests>
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
93 <help>
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
94 <![CDATA[
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
95 **What it does**
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
96
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
97 By far, the most common question asked of two sets of genomic features is whether or not any of the features in the two sets “overlap” with one another. This is known as feature intersection. bedtools intersect allows one to screen for overlaps between two sets of genomic features. Moreover, it allows one to have fine control as to how the intersections are reported. bedtools intersect works with both BED/GFF/VCF and BAM files as input.
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
98
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
99 .. image:: $PATH_TO_IMAGES/intersect-glyph.png
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
100
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
101 .. class:: infomark
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
102
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
103 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.
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
104
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
105 .. class:: infomark
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
106
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
107 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.
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
108
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
109 @REFERENCES@
4
315929597efb Uploaded
iuc
parents: 1
diff changeset
110 ]]>
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
111 </help>
1
7511823bdea1 Uploaded
iuc
parents: 0
diff changeset
112 <expand macro="citations" />
0
4fb5ea02b441 Uploaded
iuc
parents:
diff changeset
113 </tool>