annotate intersectBed.xml @ 1:82aac94b06c3 draft

Uploaded
author iuc
date Thu, 08 Jan 2015 14:25:51 -0500
parents b8348686a0b9
children 607c0576c6ab
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
1 <tool id="bedtools_intersectbed" name="Intersect interval files" version="@WRAPPER_VERSION@.0">
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
2 <description></description>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
3 <macros>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
4 <import>macros.xml</import>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
5 </macros>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
6 <expand macro="requirements" />
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
7 <expand macro="stdio" />
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
8 <command>
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
9 <![CDATA[
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
10 #set inputBs = '" "'.join( [ str( $file ) for $file in $inputB ] )
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
11 #set modes = ' '.join( str($overlap_mode).split(',') )
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
12
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
13 bedtools intersect
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
14 #if $inputA.ext == "bam":
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
15 -abam "${inputA}"
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
16 #else:
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
17 -a "${inputA}"
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
18 #end if
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
19
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
20 -b "${inputBs}"
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
21 $split
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
22 $strand
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
23 #if str($fraction) != "None" and str($fraction):
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
24 -f "${fraction}"
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
25 #end if
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
26 $reciprocal
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
27 $invert
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
28 $once
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
29 $header
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
30 $modes
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
31 > "${output}"
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
32 ]]>
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
33 </command>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
34 <inputs>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
35 <param format="bed,bam,vcf,gff,gff3" name="inputA" type="data" label="BED/VCF/GFF/BAM file"/>
1
82aac94b06c3 Uploaded
iuc
parents: 0
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)"/>
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
37 <expand macro="strand2" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
38 <param name="overlap_mode" type="select" multiple="True" label="What should be written to the output file?">
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
39 <option value="-wa" selected="True">Write the original entry in A for each overlap (-wa)</option>
82aac94b06c3 Uploaded
iuc
parents: 0
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>
82aac94b06c3 Uploaded
iuc
parents: 0
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>
82aac94b06c3 Uploaded
iuc
parents: 0
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>
82aac94b06c3 Uploaded
iuc
parents: 0
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
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
44 </param>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
45
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
46 <expand macro="split" />
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
47 <!-- -f -->
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
48 <param name="fraction" type="text"
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
49 label="Minimum overlap required as a fraction of the BAM alignment"
82aac94b06c3 Uploaded
iuc
parents: 0
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
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
51 <!-- -r -->
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
52 <expand macro="reciprocal" />
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
53 <!-- -v -->
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
54 <param name="invert" type="boolean" checked="false" truevalue="-v" falsevalue=""
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
55 label="Report only those alignments that **do not** overlap the BED file"
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
56 help="(-v)"/>
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
57 <!-- -u -->
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
58 <param name="once" type="boolean" checked="false" truevalue="-u" falsevalue=""
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
59 label="Write the original A entry _once_ if _any_ overlaps found in B."
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
60 help="Just report the fact >=1 hit was found. (-u)" />
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
61 <!-- -c -->
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
62 <param name="count" type="boolean" checked="false" truevalue="-c" falsevalue=""
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
63 label="For each entry in A, report the number of overlaps with B."
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
64 help="Reports 0 for A entries that have no overlap with B. (-c)" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
65 <expand macro="print_header" />
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
66 </inputs>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
67 <outputs>
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
68 <data format_source="inputA" name="output" metadata_source="inputA"/>
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
69 </outputs>
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
70 <tests>
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
71 <test>
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
72 <param name="inputA" value="intersectBed1.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
73 <param name="inputB" value="intersectBed2.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
74 <param name="overlap_mode" value="-wa" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
75 <param name="split" value="False" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
76 <output name="output" file="intersectBed_result1.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
77 </test>
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
78 <test>
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
79 <param name="inputA" value="intersectBed1.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
80 <param name="inputB" value="intersectBed2.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
81 <param name="overlap_mode" value="-wa,-wb" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
82 <param name="split" value="False" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
83 <output name="output" file="intersectBed_result2.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
84 </test>
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
85 <test>
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
86 <param name="inputA" value="intersectBed1.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
87 <param name="inputB" value="intersectBed2.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
88 <param name="invert" value="True" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
89 <param name="split" value="False" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
90 <output name="output" file="intersectBed_result3.bed" ftype="bed" />
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
91 </test>
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
92 </tests>
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
93 <help>
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
94 <![CDATA[
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
95 **What it does**
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
96
b8348686a0b9 Imported from capsule None
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.
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
98
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
99 .. image:: $PATH_TO_IMAGES/intersect-glyph.png
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
100
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
101 .. class:: infomark
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
102
b8348686a0b9 Imported from capsule None
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.
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
104
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
105 .. class:: infomark
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
106
b8348686a0b9 Imported from capsule None
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.
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
108
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
109 @REFERENCES@
1
82aac94b06c3 Uploaded
iuc
parents: 0
diff changeset
110 ]]>
0
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
111 </help>
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
112 <expand macro="citations" />
b8348686a0b9 Imported from capsule None
iuc
parents:
diff changeset
113 </tool>