【nodejs原理&源码杂记(8)】Timer模块与基于二叉堆的定时器(nodejs 原理)
937
2022-05-29
bedtools实用程序是用于处理基因组信息分析的强大工具集合。 例如,bedtools允许人们以广泛使用的基因组文件格式(例如BAM,BED,GFF / GTF,VCF)与多个文件中的基因组间隔相交,合并,计数,互补和混洗。 虽然每个工具都设计为执行相对简单的任务(例如,将两个间隔文件相交),但可以通过在UNIX命令行上组合多个bedtools操作来进行相当复杂的分析。
1 安装准备
华为云购买一台鲲鹏服务器
本文以云服务器KC1实例搭建,云服务器配置如表1-1所示。
表1-1 云服务器配置
项目
说明
规格
kc1.large.2 | 4vCPUs | 8GB
磁盘
系统盘:高IO(40GB)
操作系统要求如表1-2所示。
表1-2 操作系统要求
项目
说明
-
CentOS
7.6
在公共镜像中已提供。
Kernel
4.14.0
在公共镜像中已提供。
2 配置编译环境
yum install zlib-devel bzip2-devel xz-devel -y
3 安装
1) 获取源码
cd /usr/local wget https://github.com/arq5x/bedtools2/releases/download/v2.28.0/bedtools-2.28.0.tar.gz
2) 编译安装
tar -zxvf bedtools-2.28.0.tar.gz cd bedtools2 make -j4 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
这些文件内容是胎儿的组织样品,包括脑、心脏、肠道、肾脏、肺、肌肉、皮肤以及胃,其中:
cpg.bed:人类基因组中的CpG岛;
exons.bed:人类基因的RefSeq外显子;
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
鲲鹏
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。