前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Juicer: HiC数据分析与辅助基因组组装

Juicer: HiC数据分析与辅助基因组组装

作者头像
数据科学工厂
发布2023-02-27 11:29:20
1.9K1
发布2023-02-27 11:29:20
举报
文章被收录于专栏:数据科学(冷冻工厂)

导读

本文主要对处理HiC数据的Juicer程序进行一个简短的介绍,并展示如何利用Juicer进行基因组组装中染色体挂载的第一步。

1. 介绍

算法介绍

Juicer[1] 是一款能够提供一键式分析Loop-Resolution的程序。

  • 特点
  1. 只需一次单击,用户就能够处理terabase规模的Hi-C数据集
  2. 自动注释LoopsDomains
  3. Juicer是一款开源的程序
  4. 与多个集群操作系统和Amazon Web Services兼容

2. 安装

2.1. 环境要求

  • 运行 Juicer 的最低软件要求是在 WindowsLinuxMac OSX 上安装有效的 Java(版本 >= 1.8)。建议使用可用的最新 Java 版本,但请不要使用 Java Beta 版本。可以在sysreq[2]找到运行 Java 的最低系统要求。
  • 要下载和安装最新的 Java 运行时环境 (JRE),请访问java[3]
  • GNU CoreUtils;最新版本的 GNU coreutils 可以从coreutils[4]下载。
  • Burrows-Wheeler Aligner (BWA),可以从BWA[5]下载安装。

上面的环境要求,基本在Linux服务器上都是已经配置完毕的,使用之前只需要检查下Java和bwa的版本即可。

2.2. 安装

下面的安装环境是在Ubuntu系统上进行,bwa将采用conda安装。

  1. 目录建立
代码语言:javascript
复制
# 新建Juice目录
mkdir juicer && cd juicer

# 新建参考基因组相关文件目录
mkdir references 

# 新建样本的序列文件和分析结果目录
mkdir work  

# 新建参考基因组酶切图谱目录
mkdir restriction_sites  

目录结构

  1. Juicer下载

这里需要注意,小伙伴们在Github上仓库下载时,不要采用git clone的方式,因为这样会拉取最新的版本,还处于开发中,存在许多错误,建议去Releases中下载1.6的版本

不会下载的小伙伴,可以在公众号回复"juicer"获取。

安装jucier

  1. bwa安装
代码语言:javascript
复制
# 新建conda 环境安装
conda create -n juicer -c bioconda bwa -y

# 激活环境
conda activate jucier
  1. 配置jucier
代码语言:javascript
复制
# 构建scripts链接
ln -s juicer/CPU scripts  
# scripts 应该在juicer目录下

# 切换目录
cd scripts/common

# 下载 juicer_tools.1.9.9_jcuda.0.8.jar
wget -c https://hicfiles.tc4ga.com/public/juicer/juicer_tools.1.9.9_jcuda.0.8.jar

# 创建符号链接
ln -s juicer_tools.1.9.9_jcuda.0.8.jar  juicer_tools.jar

3. 实战

下面将详细介绍如何运行Juicer生成merged_nodups.txt文件,用于3D-DNA进行染色体挂载

  • 构建基因组索引
代码语言:javascript
复制
# 基因组放在jucier/reference 目录下
bwa index genome.fa
  • 生成酶切图谱文件
代码语言:javascript
复制
# 需要将 DpnII 换为 测序过程使用的酶
# genome 替换为 基因组的名字
python /home/juicer/misc/generate_site_positions.py DpnII genome /home/juicer/references/genome.fa

  • 生成染色体长度文件
代码语言:javascript
复制
# genome_DpnII.txt 文件由上一步生成
awk 'BEGIN{OFS="\t"}{print $1, $NF}'  genome_DpnII.txt > genome.chrom.sizes
  • fastq文件
代码语言:javascript
复制
# juicer/work 文件夹下创建fastq文件夹存放fastq文件
mkdir fastq

# 文件名称需要整理如下格式
work
    └── fastq
        ├── Sample1_R1.fastq.gz 
        ├── Sample1_R2.fastq.gz 
        ├── Sample2_R1.fastq.gz 
        ├── Sample2_R2.fastq.gz 
        ├── Sample3_R1.fastq.gz 
        └── Sample3_R2.fastq.gz 
  • 运行
代码语言:javascript
复制
# nohup 命令会将程序挂在后台运行
nohup /home/juicer/scripts/juicer.sh \
-z /home/juicer/references/genome.fa \
-p /home/juicer/restriction_sites/genome.chrom.sizes \
-y /home/juicer/restriction_sites/genome_DpnII.txt \
-s DpnII \
-d /home/juicer/work/ \
-D /home/juicer \
-t 40 > log.txt

# -z参数指定参考基因组fasta所在路径,在该路径下必须同时存在对应的bwa索引
# -p参数指定染色体长度文件;
# -y指定基因组酶切图谱的路径;
# -d指定样本原始文件存放的路径;
# -D指定软件的安装路径,
# -t指定bwa比对使用的线程数,默认是使用全部线程。

结果

Juicer运行完成后主要有以下两个目录:

  • splits

splits目录下存放的是中间结果,由于hi-C数据量很大,所以会将原始序列拆分成很多份,并行运算,加快速度。默认每份包含22.5M的reads, 当然这个可以通过-C参数调整,该参数指定拆分文件的行数,默认是90000000, 注意fastq文件4行代表一条序列,所以这个参数的值必须是4的倍数。拆分后序列的R1和R2端分别通过bwa比对基因组,然后合并,筛选嵌合体序列,去重复,生成预处理后的结果文件。

  • aligned

aligned目录下存放的是最终结果,包含了可以导入juicebox的后缀为hic的图谱文件, inter.hicinter_30.hic30表示通过MAPQ > 30进行过滤之后的结果。

其中"merged_nodups.txt"就是下一步3D-DNA的输入文件之一。

参考资料

[1]

Juicer: https://www.cell.com/cell-systems/fulltext/S2405-4712(16)30219-8

[2]

sysreq: https://java.com/en/download/help/sysreq.xml

[3]

Java: https://www.java.com/download

[4]

coreutils: https://www.gnu.org/software/coreutils/manual/

[5]

BWA: http://bio-bwa.sourceforge.net/

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-10-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 冷冻工厂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 导读
  • 1. 介绍
  • 2. 安装
    • 2.1. 环境要求
      • 2.2. 安装
      • 3. 实战
      • 结果
        • 参考资料
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档