** 利用bedtools筛选基因组数据中显著区域与QTL交集区域**
总的来说,bedtools工具是用于广泛的基因组学分析任务的一把利器。最广泛使用的工具能够实现基因组算术:即基因组上的集合理论。例如,bedtools允许人们从广泛使用的基因组文件格式(如BAM、BED、GFF/GTF、VCF)的多个文件中交叉、合并、计数、互补和基因组区间。虽然每个单独的工具被设计用来做一个相对简单的任务(例如,与两个区间文件相交),但通过在UNIX命令行上结合多个bedtools操作可以进行相当复杂的分析。
1.下载安装bedtools
参考官方说明https://bedtools.readthedocs.io/en/latest/content/installation.html
2.文件准备(本次使用bed格式文本)
2.1数据格式-例如iHS结果
#染色体 开始位置 终止位置 区域名字(bed文件必须有前三列,并且以TAB分隔符分隔。第四列可以缺失)
20 27500000 28000000 20_27500000
20 26500000 27000000 20_26500000
20 29000000 29500000 20_29000000
20 30000000 30500000 20_30000000
20 22500000 23000000 20_22500000
#bed文件可以在excel中另存为制表符分隔.txt,然后修改文件后缀名为.bed
2.2数据下载
2.2.1QTL数据
animal QTL database数据库地址:https://www.animalgenome.org/cgi-bin/QTLdb/index
根据参考基因组版本下载相应版本的
下载牛QTL数据https://www.animalgenome.org/cgi-bin/QTLdb/BT/index
我这里下载的bed格式的QTL文件
QTL.bed文件需质控(建议以wps表格打开文件)
#去掉前几行注释
#删掉QTL文件中区域位置小于-1的行
#处理后
#染色体 开始位置 终止位置 QTL描述
1 0 0 M. paratuberculosis susceptibility QTL (18764)
1 0 52308051 Milk protein yield QTL (2728)
1 0 1826321 Fat thickness at the 12th rib QTL (1317)
1 389669 594759 Social separation--Standing alert QTL (7127)
1 518536 518540 Tenderness score QTL (227831)
1 716719 716723 Conception rate QTL (181148)
####2.2.2自己数据中显著区域
参考2.1
##bedtools取交集
bedtools intersect -a QTL_BED.bed -b iHS_2.58.bed -wo >iHS_QTL_wo.bed
#结果文件iHS_QTL_wo.bed
1 0 52308051 Milk protein yield QTL (2728) 1 51500000 52000000 1_51500000 500000
1 5243110 52308051 Milk yield QTL (10211) 1 51500000 52000000 1_51500000 500000
1 5243110 52308051 Milk protein yield QTL (10212) 1 51500000 52000000 1_51500000 500000
1 51501178 51501182 Milk kappa-casein percentage QTL (113359) 1 51500000 52000000 1_51500000 4
1 51594124 51594128 Milk beta-lactoglobulin percentage QTL (108872) 1 51500000 52000000 1_51500000 4
1 51595143 51595147 Milk beta-lactoglobulin percentage QTL (108873) 1 51500000 52000000 1_51500000 4
1 51706692 51706696 Bovine tuberculosis susceptibility QTL (167756) 1 51500000 52000000 1_51500000 4
在 bedtools intersect 命令的输出结果中,每一列的含义如下:
第一列:QTL_BED.bed 中的染色体名称。
第二列:QTL_BED.bed 中的区域起始位置。
第三列:QTL_BED.bed 中的区域终止位置。
第四列:ROH_high.bed 中的染色体名称。
第五列:ROH_high.bed 中的区域起始位置。
第六列:ROH_high.bed 中的区域终止位置。
第七列:两个区域之间的重叠长度。
#bedtools的功能很强大,以下是官方介绍的例子,此外还有很多参数可以用
1.靶向DNA捕获的覆盖分析
2.测量许多细胞类型之间的DNase超敏性的相似性
3.从基因组中提取启动子序列
4.比较许多基因组区间文件之间的交集
5.RNA-seq覆盖率分析
6.识别缺乏覆盖率的目标区域
7.计算CCDS外显子的GC含量.
8.制作多个细胞类型的ChromHMM轨迹的主表。