luria的个人博客分享 http://blog.sciencenet.cn/u/luria

博文

Hi-C数据比对软件HiCPro的安装与使用

已有 506 次阅读 2019-5-31 14:16 |个人分类:Hi-C|系统分类:科研笔记| hicpro, Hi-C, HiCUP, ice

1. 安装

目前最新版的是2.11.1版。注意:不要安装2.10.1版,新版本2.11.1版在2.10.1版上有重大更新,2.10.1版的iced无法自动编绎安装。升级版修复了这个重大bug

wget https://github.com/nservant/HiC-Pro/archive/v2.11.1.tar.gz

tar -xxvf v2.11.1.tar.gz #解压生成目录HiC-Pro_2.11.1

cd HiC-Pro_2.11.1

#修改config-install.txt文件中软件路径(注意:以下均为目录)

PREFIX是最后安装到的目录。

注意:其中这个路径一定不能是解压后的当前目录或子目录!因为在安装过程中程序会将整个HiC-Pro_v2.11.1拷贝到PREFIX目录下!这个操作太诡异了,一定要注意!!

BOWTIE2_PATHSAMTOOLS_PATHR_PATHPYTHON_PATH分别是bowtie2samtoolsRpython的路径目录,CLUSTER_SYS是作业调度系统,仅支持TORQUE, SGE or SLURM系统。

make configure

make install

 

2. HiCPro的使用

建议先建立文件夹01.ref 02.reads,将reference(即辅助组装的输入fasta)链接到01.ref

2.1 采用HiCPro自带的digest_genome.py程序酶切位点信息文件,例如:

/PATH/TO/HiC-Pro_2.11.1/bin/utils/digest_genome.py -r mboi -o falcon_contig.MboI.txt /PATH/TO/falcon_contig.fasta

# 其中falcon_contig.fasta是辅助组装的输入contig/scaffold,后期需将HiC reads比对到该fasta文件

其中,-r指定酶的名称或序列,在代码给了如下字典,所以此处-r^GATCmboi(注意全小写字母)都可以。

# -o指定输出的酶切信息文件

# 最后的位置参数为参考基因组序列

完成后,生成的文件格式如下:

第一列是序列名,这里不是原始输入的序列名,而是HiC-Pro自行指定的序列名,第二列和第三列相关,第三列是程序检测到的酶切位点对应序列的起始位置。例如,假设采用的酶是MboI,那么参考基因组序列上GATC位点的起始位置。

 

2.2 bowtie2falcon_contig.fasta建立索引

/PATH/TO/bowtie2-build --threads 20 /PATH/TO/falcon_contig.fasta /PATH/TO/falcon_contig

# 强列建议,索引命名为是reference去掉后缀.fasta的字符串

 

2.3整理reads目录结构

注意:这里是HiCPro的第二个坑!

HiCPro的源码中只会读入指定目录的子目录的文件,源码如下:

所以,建立reads目录结构如下:

 

注意:其中reads名称默认必须是_R1.fastq.gz_R2.fastq.gz结尾的。否则会报如下错误:

Exit: Error: Directory Hierarchy of rawdata '/path/to/02.reads/' is not correct. Paired '.fastq' files with _R1/_R2 are required !

这里是应与后面的config-hicpro.txtPAIR1_EXT对应上,因为默认如下:

PAIR1_EXT = _R1

PAIR2_EXT = _R2

 

2.4 基因组中序列大小文件

这个文件记录了falcon_contig.fasta中序列长度信息,每行如下:

<contig1>[TAB]<contig1_length>

例如:

可通过以下脚本获取:

samtools faidx /PATH/TO/falcon_contig.fasta

运行完生成falcon_contig.fasta.fai

再采用以下脚本生成genome size文件

awk '{print $1"\t"$2}' falcon_contig.fasta.fai > falcon_contig.fasta.size

 

2.5 运行主程序

cp /PATH/TO/HiC-Pro_2.11.1/config-hicpro.txt .

HiCPro安装目录下的config-hicpro.txt文件拷贝到当前目录下,并进行修改:

通常需修改的地方有以下几个,其中用红色标出是重要的(通常每次运行都修改的)参数:

>  N_CPU,例如N_CPU = 24

>  JOB_NAME,例如JOB_NAME = Arabidopsis_thaliana

>  JOB_WALLTIME,例如JOB_WALLTIME = 11:00:00

>  JOB_QUEUE,例如JOB_QUEUE = assembly

>  JOB_MAIL,例如JOB_MAIL = lurui@frasergen.com

>  BOWTIE2_IDX_PATH填写用bowtie2reference建立索引的目录,注意是目录,而不是索引路径!/PATH/to/ref/dir

>  REFERENCE_GENOME,例如falcon_contig

>  注意:这是第三个大坑!这里REFERENCE_GENOME一定要和bowtie2建立的索引对应上,而且不是路径

>  GENOME_SIZE,即第2.4步生成的文件falcon_contig.fasta.size

>  GENOME_FRAGMENT,指定在2.1中用digest_genome.py程序生成的文件falcon_contig.MboI.txt

>  LIGATION_SITE,酶的序列,例如HindIII,则为AAGCTAGCTT;如果是MboI则序列为GATCGATC

>  MIN_FRAG_SIZE,例如MIN_FRAG_SIZE = 100

>  MAX_FRAG_SIZE,例如MAX_FRAG_SIZE = 100000

>  MIN_INSERT_SIZE,例如MIN_INSERT_SIZE = 100

>  MAX_INSERT_SIZE,例如MAX_INSERT_SIZE = 600

>  GET_PROCESS_SAM,例如GET_PROCESS_SAM = 1

 

主程序HiC-Pro可以单线程来跑(不使用--parallel选项),或者采用多线程来跑(使用--parallel选项)

/PATH/TO/HiC-Pro_2.11.1/bin/HiC-Pro --input /PATH/TO/02.reads/ --output hicpro_output --conf /PATH/TO/config-hicpro.txt --parallel

 

如果是单线程来跑,可以直接qsub以上脚本;

如果是多线程来跑,程序会先生成一个文件夹,所有要准备的脚本文件都在这个文件夹下。其中有两个脚本HiCPro_step1_xx.shHiCPro_step2_xx.sh

注意:因为生成的sh脚本中qsub参数行与普通的qsub不同,需要修改,这里可以直接ssh到某个节点,再在后台运行nohup sh HiCPro_step1_xx.sh &,具体有待下一步解决。

请注意:使用多线程模式时,程序会使用结点上所有可以利用的CPU

如果想多线程采用qsub的方式上抛计算节点,必须要加一个-t 1 !

例如qsub -cwd -l vf=30g,p=10 -q fat -t 1 HiCPro_step1_xx.sh

如果不加-t 1则会报如下错误:

--------------------------------------------

Fri May 31 13:20:50 CST 2019

Bowtie2 alignment step1 ...

Nothing to align ! Please check input files and R1/R2 extension.

make: *** [bowtie_global] Error 1

 




http://blog.sciencenet.cn/blog-2970729-1182259.html

上一篇:Hi-C分型绝招之HapCUT
下一篇:HiCPro分析流程详解

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备14006957 )

GMT+8, 2019-7-24 10:21

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部