bedtools 的安裝與使用


1) 安裝

bedtools 提供了3種安裝方式

  • 從google code 下載源代碼進行安裝
  • 利用系統中的包管理工具進行安裝, 比如cnetos 下的yum, ubuntu下的apt-get, mac 下的homebrew
  • 從github下載源代碼,進行安裝

由於訪問不了google code,又想編譯安裝,就從github上下載最新版:https://github.com/arq5x/bedtools2

下載v2.25.0版本的源代碼,進行安裝

wget https://github.com/arq5x/bedtools2/archive/v2.25.0.tar.gz
tar xzvf v2.25.0 
cd bedtools2-2.25.0/
make
cd bin/
export PATH=$PWD:$PATH

 2) 使用

intersect: 求兩個區間的交集,輸入文件可以是bed,gff,vcf

准備兩個測試文件,

cpg.bed,其內容為

chr1	20	70	CPG_1
chr1	100	120	CPG_2
chr1	150	250	CPG_3

exon.bed,其內容為

chr1	10	40	exon_1
chr1	50	60	exon_2
chr1	130	180	exon_3
chr1	200	280	exon_4

使用默認參數,求這個文件的overlap,運行

bedtools intersect -a cpg.bed  -b exon.bed

結果為

chr1	20	40	CPG_1
chr1	50	60	CPG_1
chr1	150	180	CPG_3
chr1	200	250	CPG_3

可以看出,默認情況下只輸出A中overlap的區域

添加-wa 參數, 再次運行

bedtools intersect -a cpg.bed  -b exon.bed -wa

結果為:

chr1	20	70	CPG_1
chr1	20	70	CPG_1
chr1	150	250	CPG_3
chr1	150	250	CPG_3

可以看出,加上-wa 參數后,只要A中的這段區域與B中區域有交集,就輸出,而且overlap幾次,就輸出幾次

添加-wb 參數,運行

bedtools intersect -a cpg.bed  -b exon.bed -wb

結果為:

chr1	20	40	CPG_1	chr1	10	40	exon_1
chr1	50	60	CPG_1	chr1	50	60	exon_2
chr1	150	180	CPG_3	chr1	130	180	exon_3
chr1	200	250	CPG_3	chr1	200	280	exon_4

可以看出,加上-wb參數后,除了輸出A中的overlap區域外,還會輸出B中的整個區間

加上-wa, -wb 參數,再次運行

bedtools intersect -a cpg.bed  -b exon.bed -wa -wb

結果為:

chr1	20	70	CPG_1	chr1	10	40	exon_1
chr1	20	70	CPG_1	chr1	50	60	exon_2
chr1	150	250	CPG_3	chr1	130	180	exon_3
chr1	150	250	CPG_3	chr1	200	280	exon_4

可以看出,同時添加-wa和-wb參數會將overlap 區域成對輸出

-c參數,統計A中每個區域與Boverlap的次數

bedtools intersect -a cpg.bed  -b exon.bed -c

結果為:

chr1	20	70	CPG_1	2
chr1	100	120	CPG_2	0
chr1	150	250	CPG_3	2

-v參數:只輸出A中沒有與Boverlap的區域

bedtools intersect -a cpg.bed  -b exon.bed -v

結果為:

chr1	100	120	CPG_2

可以看出,只要只要與B有overlap就不輸出。

 

  

 

 

  

  

  

  

  

  

  

  

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM