Repository revision
45:a1a923cd89e8

Repository 'bedtools'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/bedtools

bedtools Intersect intervals tool metadata
Miscellaneous
find overlapping intervals in various ways
bedtools_intersectbed
toolshed.g2.bx.psu.edu/repos/iuc/bedtools/bedtools_intersectbed/2.30.0+galaxy1
2.30.0+galaxy1
bedtools --version
True
Version lineage of this tool (guids ordered most recent to oldest)
toolshed.g2.bx.psu.edu/repos/iuc/bedtools/bedtools_intersectbed/2.30.0+galaxy1 (this tool)
toolshed.g2.bx.psu.edu/repos/iuc/bedtools/bedtools_intersectbed/2.30.0
toolshed.g2.bx.psu.edu/repos/iuc/bedtools/bedtools_intersectbed/2.29.2
toolshed.g2.bx.psu.edu/repos/iuc/bedtools/bedtools_intersectbed/2.29.0
toolshed.g2.bx.psu.edu/repos/iuc/bedtools/bedtools_intersectbed/2.27.1+galaxy1
toolshed.g2.bx.psu.edu/repos/iuc/bedtools/bedtools_intersectbed/2.19.0
bedtools_intersectbed
Requirements (dependencies defined in the <requirements> tag set)
name version type
bedtools 2.30.0 package
samtools 1.9 package
Additional information about this tool
#import re
#set modes = ' '.join(str($overlap_mode).split(','))

#if $modes == "None":
    #set modes = ''
#end if

bedtools intersect
-a '${inputA}'

#if str($reduce_or_iterate.reduce_or_iterate_selector) == 'iterate':
    -b '$reduce_or_iterate.inputB'
#else:
    -b
    #for $file in $reduce_or_iterate.inputB
        '$file'
    #end for

    #if $reduce_or_iterate.names:
        #set namesB = "' '".join([re.sub('[^\s\w\-]', '_', str($file.element_identifier)) for $file in $reduce_or_iterate.inputB])
        -names '$namesB'
    #end if
#end if
$split
$strand
#if $fraction_cond.fraction_select == "specify":
    #if str($fraction_cond.overlap)
        -f $fraction_cond.overlap
    #end if
    $fraction_cond.reciprocal_cond.reciprocal
    #if str($fraction_cond.reciprocal_cond.reciprocal) == '':
        #if str($fraction_cond.reciprocal_cond.overlapB):
            -F $fraction_cond.reciprocal_cond.overlapB
        #end if
        $fraction_cond.reciprocal_cond.disjoint
    #end if
#end if
$invert
$once
$header
$modes


$sorted
#if str($sorted) != '':
    #if str($reduce_or_iterate.reduce_or_iterate_selector) == 'iterate' and $reduce_or_iterate.inputB.is_of_type('bam'):
        -g <(samtools view -H $reduce_or_iterate.inputB | tr ':' '\t' | grep SN | cut -f 3,5)
    #else if str($reduce_or_iterate.reduce_or_iterate_selector) == 'reduce' and str($reduce_or_iterate.inputB) != 'None' and $reduce_or_iterate.inputB[0].is_of_type('bam'):
        -g <(samtools view -H $reduce_or_iterate.inputB[0] | tr ':' '\t' | grep SN | cut -f 3,5)
    #end if
#end if

    

#if $genome_file_opts.genome
    -g 
    #if $genome_file_opts.genome_file_opts_selector == "loc":
        '$genome_file_opts.genome.fields.len_path'
    #elif $genome_file_opts.genome_file_opts_selector == "hist":
        '$genome_file_opts.genome'
    #end if
#end if
    
$bed
$count
> '${output}'
    
None
False
Functional tests
name inputs outputs required files
Test-1 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
name: value
intersect-A.bed
intersect-B.bed
value
Test-2 inputA: intersect-query.bed
reduce_or_iterate|inputB: ['intersect-d1.bed', 'intersect-d2.bed', 'intersect-d3.bed']
reduce_or_iterate|reduce_or_iterate_selector: reduce
name: value
intersect-query.bed
intersect-d1.bed
intersect-d2.bed
intersect-d3.bed
value
Test-3 inputA: intersect-query.bed
reduce_or_iterate|inputB: ['intersect-d1.bed', 'intersect-d2.bed', 'intersect-d3.bed']
reduce_or_iterate|reduce_or_iterate_selector: reduce
overlap_mode: ['-wa', '-wb']
sorted: True
name: value
intersect-query.bed
intersect-d1.bed
intersect-d2.bed
intersect-d3.bed
value
Test-4 inputA: intersect-query.bed
reduce_or_iterate|inputB: ['intersect-d1.bed', 'intersect-d2.bed', 'intersect-d3.bed']
reduce_or_iterate|names: True
reduce_or_iterate|reduce_or_iterate_selector: reduce
overlap_mode: ['-wa', '-wb']
sorted: True
name: value
intersect-query.bed
intersect-d1.bed
intersect-d2.bed
intersect-d3.bed
value
Test-5 inputA: intersect-query.bed
reduce_or_iterate|inputB: ['intersect-d1.bed', 'intersect-d2.bed', 'intersect-d3.bed']
reduce_or_iterate|reduce_or_iterate_selector: reduce
invert: True
sorted: True
name: value
intersect-query.bed
intersect-d1.bed
intersect-d2.bed
intersect-d3.bed
value
Test-6 inputA: intersect-query.bed
reduce_or_iterate|inputB: ['intersect-d1.bed', 'intersect-d2.bed', 'intersect-d3.bed']
reduce_or_iterate|reduce_or_iterate_selector: reduce
overlap_mode: ['-wa', '-wb']
fraction_cond|overlap: 1.0
fraction_cond|fraction_select: specify
sorted: True
name: value
intersect-query.bed
intersect-d1.bed
intersect-d2.bed
intersect-d3.bed
value
Test-7 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: -wa
name: value
intersect-A.bed
intersect-B.bed
value
Test-8 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: -wb
name: value
intersect-A.bed
intersect-B.bed
value
Test-9 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: ['-wa', '-wb']
name: value
intersect-A.bed
intersect-B.bed
value
Test-10 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: -loj
name: value
intersect-A.bed
intersect-B.bed
value
Test-11 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: -wo
name: value
intersect-A.bed
intersect-B.bed
value
Test-12 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: -wao
name: value
intersect-A.bed
intersect-B.bed
value
Test-13 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
once: True
name: value
intersect-A.bed
intersect-B.bed
value
Test-14 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
count: True
name: value
intersect-A.bed
intersect-B.bed
value
Test-15 inputA: intersect-A.bed
reduce_or_iterate|inputB: intersect-B.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
invert: True
name: value
intersect-A.bed
intersect-B.bed
value
Test-16 inputA: intersect-A2.bed
reduce_or_iterate|inputB: intersect-B2.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: ['-wa', '-wb']
fraction_cond|overlap: 0.5
fraction_cond|fraction_select: specify
name: value
intersect-A2.bed
intersect-B2.bed
value
Test-17 inputA: intersect-A2.bed
reduce_or_iterate|inputB: intersect-B2.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: ['-wa', '-wb']
fraction_cond|overlap: 0.5
fraction_cond|reciprocal_cond|reciprocal: -r
fraction_cond|fraction_select: specify
name: value
intersect-A2.bed
intersect-B2.bed
value
Test-18 inputA: intersect-A2.bed
reduce_or_iterate|inputB: intersect-B2.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: ['-wa', '-wb']
fraction_cond|overlap: 0.5
fraction_cond|reciprocal_cond|overlapB: 0.5
fraction_cond|fraction_select: specify
name: value
intersect-A2.bed
intersect-B2.bed
value
Test-19 inputA: intersect-A2.bed
reduce_or_iterate|inputB: intersect-B2.bed
reduce_or_iterate|reduce_or_iterate_selector: iterate
overlap_mode: ['-wa', '-wb']
fraction_cond|overlap: 0.5
fraction_cond|reciprocal_cond|overlapB: 0.5
fraction_cond|reciprocal_cond|disjoint: True
fraction_cond|fraction_select: specify
name: value
intersect-A2.bed
intersect-B2.bed
value
Test-20 inputA: intersectBed1.bed
reduce_or_iterate|inputB: intersectBed2.bed
overlap_mode: -wa
split: False
name: value
intersectBed1.bed
intersectBed2.bed
value
Test-21 inputA: intersectBed1.bed
reduce_or_iterate|inputB: intersectBed2.bed
overlap_mode: ['-wa', '-wb']
split: False
name: value
intersectBed1.bed
intersectBed2.bed
value
Test-22 inputA: intersectBed1.bed
reduce_or_iterate|inputB: intersectBed2.bed
split: False
invert: True
name: value
intersectBed1.bed
intersectBed2.bed
value