简介
bedtools实用程序是用于处理基因组信息分析的强大工具集合。例如,bedtools允许人们以广泛使用的基因组文件格式( 例如BAM,BED,GFF/ GTF,VCF)与多个文件中的基因组间隔相交,合并,计数,互补和混洗。虽然每个工具都设计为执行相对简单的任务(例如,将两个间隔文件相交),但可以通过在UNIX命令行上组合多个bedtools操作来进行相当复杂的分析。
配置流程
1. 配置编译环境
安装相关依赖。
yum install zlib-devel bzip2-devel xz-devel -y
2. 获取源码
获取“bedtools-2.28.0”源码包。
cd /usr/local
wget https://github.com/arq5x/bedtools2/releases/download/v2.28.0/bedtools-2.28.0.tar.gz
3. 编译和安装
1)解压并进入源码目录。
tar -zxvf bedtools-2.28.0.tar.gz
cd bedtools2
2)编译。
make -j4
3)建立软链接。
ln -s /usr/local/bedtools2/bin/bedtools /usr/bin/bedtools
4. 运行和验证
1)获取测试数据。
mkdir ~/lec28
cd ~/lec28
curl -O https://s3.amazonaws.com/bedtools-tutorials/web/maurano.dnaseI.tgz
curl -O https://s3.amazonaws.com/bedtools-tutorials/web/cpg.bed
curl -O https://s3.amazonaws.com/bedtools-tutorials/web/exons.bed
curl -O https://s3.amazonaws.com/bedtools-tutorials/web/gwas.bed
curl -O https://s3.amazonaws.com/bedtools-tutorials/web/genome.txt
curl -O https://s3.amazonaws.com/bedtools-tutorials/web/hesc.chromHmm.bed
tar -zxvf maurano.dnaseI.tgz
rm -f maurano.dnaseI.tgz
数据显示如下:
[root@ecs lec28]# ls
cpg.bed fLung_L-DS17154.hg19.hotspot.twopass.fdr0.05.merge.bed
exons.bed fLung_L-DS18421.hg19.hotspot.twopass.fdr0.05.merge.bed
fBrain-DS14718.hotspot.twopass.fdr0.05.merge.bed fLung_R-DS15632.hotspot.twopass.fdr0.05.merge.bed
fBrain-DS16302.hotspot.twopass.fdr0.05.merge.bed fMuscle_arm-DS19053.hg19.hotspot.twopass.fdr0.05.merge.bed
fHeart-DS15643.hotspot.twopass.fdr0.05.merge.bed fMuscle_back-DS18454.hg19.hotspot.twopass.fdr0.05.merge.bed
fHeart-DS15839.hotspot.twopass.fdr0.05.merge.bed fMuscle_leg-DS19115.hg19.hotspot.twopass.fdr0.05.merge.bed
fHeart-DS16621.hotspot.twopass.fdr0.05.merge.bed fMuscle_leg-DS19158.hg19.hotspot.twopass.fdr0.05.merge.bed
fIntestine_Sm-DS16559.hotspot.twopass.fdr0.05.merge.bed fSkin_fibro_bicep_R-DS19745.hg19.hotspot.twopass.fdr0.05.merge.bed
fIntestine_Sm-DS16712.hg19.hotspot.twopass.fdr0.05.merge.bed fStomach-DS17659.hg19.hotspot.twopass.fdr0.05.merge.bed
fIntestine_Sm-DS16822.hotspot.twopass.fdr0.05.merge.bed genome.txt
fIntestine_Sm-DS17808.hg19.hotspot.twopass.fdr0.05.merge.bed gwas.bed
fIntestine_Sm-DS18495.hg19.hotspot.twopass.fdr0.05.merge.bed hesc.chromHmm.bed
fKidney_renal_cortex_L-DS17550.hg19.hotspot.twopass.fdr0.05.merge.bed
这些文件内容是胎儿的组织样式,包括脑、心脏、肠道、肾脏、肺、肌肉、皮肤以及胃,其中:
a. cpg.bed:人类基因组中的CpG岛。
b. exons.bed:人类基因的RefSeq外显子。
c. gwas.bed:在全基因组关联研究(GWAS)中鉴定的与人类疾病相关的SNP。
2)获取交集信息。
比如,找到A和B文件中重叠的部分。
bedtools intersect -a cpg.bed -b exons.bed | head -5
[root@ecs lec28]# bedtools intersect -a cpg.bed -b exons.bed | head -5
chr1 29320 29370 CpG:_116
chr1 135124 135563 CpG:_30
chr1 327790 328229 CpG:_29
chr1 327790 328229 CpG:_29
chr1 327790 328229 CpG:_29
3)从注释文件中,选取启动子。
cat hesc.chromHmm.bed | grep Promoter > promoters.bed
cat promoters.bed |head -5
[root@ecs lec28]# cat hesc.chromHmm.bed | grep Promoter > promoters.bed
[root@ecs lec28]# cat promoters.bed |head -5
chr1 27737 28537 2_Weak_Promoter
chr1 28537 30137 1_Active_Promoter
chr1 30137 30337 2_Weak_Promoter
chr1 30537 30737 3_Poised_Promoter
chr1 713137 713337 2_Weak_Promoter
4)找到跟每个exon最近的启动子。
bedtools closest -a exons.bed -b promoters.bed -d | head -5
[root@ecs lec28]# bedtools closest -a exons.bed -b promoters.bed -d | head -5
chr1 11873 12227 NR_046018_exon_0_0_chr1_11874_f 0 + chr1 27737 28537 2_Weak_Promoter 15511
chr1 12612 12721 NR_046018_exon_1_0_chr1_12613_f 0 + chr1 27737 28537 2_Weak_Promoter 15017
chr1 13220 14409 NR_046018_exon_2_0_chr1_13221_f 0 + chr1 27737 28537 2_Weak_Promoter 13329
chr1 14361 14829 NR_024540_exon_0_0_chr1_14362_f 0 - chr1 27737 28537 2_Weak_Promoter 12909
chr1 14969 15038 NR_024540_exon_1_0_chr1_14970_f 0 - chr1 27737 28537 2_Weak_Promoter 12700