bedtools intersect用法 (intersectB

作者: 生信编程日常 | 来源:发表于2020-03-12 22:22 被阅读0次

    bedtools intersect可以对两个基因组特征 (genomic features) 进行overlap,找到两者重合的区域。比如求两个peaks的交集,或者看很多位点信息在没在peaks或其他区域中,用这个工具非常方便快捷。


    默认用法为:

    bedtools intersect [OPTIONS] -a <FILE> \
                                 -b <FILE1, FILE2, ..., FILEN>
    

    或者:

    intersectBed [OPTIONS] -a <FILE> \
                                 -b <FILE1, FILE2, ..., FILEN>
    

    其中a和b提供的文件为BAM/BED/GFF/VCF格式。

    下边举例几种常见用法:

    1. 默认

    默认情况下取两个文件的交集区域:

    cat A.bed
    

    chr1 10 20
    chr1 30 40

    cat B.bed
    

    chr1 15 18

    intersectBed -a A.bed -b B.bed
    

    chr1 15 18

    1. -wa -wb参数

    -wa 输出有overlap区域的原-a文件中的内容:

    intersectBed -a A.bed -b B.bed -wa
    

    输出:
    chr1 10 20

    -wb会输出overlap的区域和其中-b文件中的内容:

    intersectBed -a A.bed -b B.bed -wb
    

    输出:
    chr1 15 18 chr1 15 18

    -wa -wb 输出overlap的区域所在-a和-b中的原内容:

    intersectBed -a A.bed -b B.bed -wa -wb
    

    输出:
    chr1 10 20 chr1 15 18

    1. -v 参数
      -v输出在-a参数文件中没有overlap的区域:
    intersectBed -a A.bed -b B.bed -v
    

    输出:
    chr1 30 40

    1. -wo
      输出overlap的长度:
     intersectBed -a A.bed -b B.bed -wo
    

    输出:
    chr1 10 20 chr1 15 18 3

    此外还有一点要注意,假如是看两个位点是否一致,这里是不可以的,比如:
    C.bed:
    chr1 10 10
    D.bed:
    chr1 11 11

    intersectBed -a C.bed -b D.bed -wa -wb
    

    输出:chr1 10 10 chr1 11 11

    也就是这里会认为是overlap的。但是,C.bed和D.bed第三列分别加1,即C.bed改成chr1 10 11, D.bed改成chr1 11 12,则不会有overlap了。

    相关文章

      网友评论

        本文标题:bedtools intersect用法 (intersectB

        本文链接:https://www.haomeiwen.com/subject/jwxgjhtx.html