告别3D-DNA试试chromap和yahs做Hi-C辅助组装吧

2023-11-20

之前使用的是3D-DNA流程做Hi-C的辅助组装,它的最大优势就是输出结果可以对接下游的JBAT(juicerbox with Assembly Tools)进行手动矫正。然而它点缺陷也很明显,处理速度不够快,且对植物的优化不行,同时目前许久不更新了。

最近我发现了一套新的组合,chromap + yahs 完全替代之前3D-DNA流程。它的依赖工具如下

  • chromap: 高效Hi-C数据比对
  • samtools: sam转bam
  • yahs: 另一个Hi-C scaffolding工具。纠错上准确性高,排序上略强3d-dna,远超SALSA2。
  • juicer_tools: 用于输出导入JuiceBox

chrompa, samtools, yahs可以直接用conda进行安装,juicer_tools依赖Java环境,并需要单独下载

conda create -n hic-scaffolding -c bioconda -c conda-forge chromap samtools yahs assembly-stats openjdk 
# 1.19.02版本就行了, 最新的3.0不向下兼容
wget https://s3.amazonaws.com/hicfiles.tc4ga.com/public/juicer/juicer_tools_1.19.02.jar

具体分析步骤如下,我们需要提供前期组装结果,以及Hi-C数据

contigsFasta=/到/你的/contig.fa的路径
r1Reads=/到/你的/Hi-C R1测序的路径
r2Reads=/到/你的/Hi-C R2测序的路径

第一步,数据比对

# 建立索引
samtools faidx $contigsFasta
chromap -i -r $contigsFasta -o contigs.index

# alignment
chromap \
    --preset hic \
    -r $contigsFasta \
    -x contigs.index \
    --remove-pcr-duplicates \
    -1 $r1Reads \
    -2 $r2Reads \
    --SAM \
    -o aligned.sam \
    -t 50

# 排序   
samtools view -bh aligned.sam | samtools sort -@ 50 -n > aligned.bam
rm aligned.sam    

按照read的名字进行排序和按照位置排序或未排序的结果会有一些不同。

第二步,又快又好的scaffolding。默认只需要两个输入,组转的contig.fa和比对的bam,和C语言一样简洁。

yahs $contigsFasta aligned.bam

在输出结果中

  • inital_break 表示纠错的中间输出
  • _scaffolds_final.agp和_scaffolds_final.fa则是最终结果

对于输出结果,我们希望进行可视化,此时可以使用yahs提供的jucier工具

第三步,为juicer_tools准备输入

juicer pre -a -o out_JBAT \
    yahs.out.bin \
    yahs.out_scaffolds_final.agp \
    $contigsFasta.fai
# -o out_JBAT表示输出文件名的前缀    

一共包括如下几个文件

  • out_JBAT.assembly
  • out_JBAT.assembly.agp
  • out_JBAT.hic
  • out_JBAT.liftover.agp
  • out_JBAT.txt

out_JBAT.txt就作为下游的输入

JUICER=/路径/到/juicer_tools_1.19.02.jar
asm_size=$(awk '{s+=$2} END{print s}' $contigsFasta.fai)
java -Xmx36G -jar $JUICER \
    pre out_JBAT.txt out_JBAT.hic <(echo "assembly ${asm_size}")

输出的out_JBAT.hic就可以导入到JBAT进行组装,导出为out_JBAT.review.assembly

将手动修改的结果传递给juicer,进行scaffolding。

juicer post -o out_JBAT out_JBAT.review.assembly out_JBAT.liftover.agp contigs.fa

输出结果为 out_JBAT.FINAL.agp, out_JBAT.FINAL.fa

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

告别3D-DNA试试chromap和yahs做Hi-C辅助组装吧 的相关文章

随机推荐

  • Node.js程序如何建立及使用Model

    建立Model 直接使用Sequelize虽然可以 但是存在一些问题 团队开发时 有人喜欢自己加timestamp var Pet sequelize define pet id type Sequelize STRING 50 prima
  • Unity中loading页加载的实现

    首先创建一个Global cs 使用单例用于存储场景的名字 便于后续脚本的调用 此脚本不必挂载在游戏物体上 using UnityEngine using System Collections public class Global Mon
  • Eclipse项目上有红色的叉或感叹号

    Eclipse中导入的项目没有报错 甚至都能正常运行 但就是会有一个红色的 或 对于一个有强迫症的我 忍不了 下面怎么解决 我提供一个平时解决的方法 首先 这个报错是IDE工具的报错 先找到报错描述 window gt show view
  • Go语言学习路线

    gogogo git 地址 Go 学习 学习路线 2 基础知识 3 开发工具安装地址 下载 Go基础知识 链接为gitee地址 放心查看 基础结构 learn1 go 基础语法 learn2 go 数据类型 learn3 go 变量 lea
  • mkfs.xfs: cannot open /dev/sdb1: Device or resource busy 设备或资源忙

    今天在centos下用xfs格式化磁盘出现如下错误 mkfs xfs cannot open dev sdb1 Device or resource busy 设备或资源忙 时出现 重启服务器后再格式化也一样 也就是重启服务器没什么用 用l
  • QT之一个UI里边多界面切换

    QT之多界面交换 环境 VS2019 QT tools 从网上查看了许多大神的帖子 先将多界面切换的方法总结如下 1 可以通过QT Designer中添加Containers控件里的Stacked Widget实现同一个UI里的页面切换 可
  • multisim仿真 74LS147D芯片

    multisim仿真 74LS147D芯片
  • el-input-number默认值为空怎么设置

    el input number 没有值的情况下 默认值为0 一般没有值的情况下默认值为空 需要将默认值 undefined
  • 【PDF】PDF无法注释的一种解决方案

    PDF无法注释 需要检查 1 权限问题 2 文档规范问题 PDF A 拓展阅读 浏览器打开PDF调整亮度和颜色的小技巧 处理pdf 文档的相关功能包总结 1 pdf文档不能注释 下载的一篇pdf文档在阅读时不能注释 高亮和打字机等选项都是灰
  • java通过MultipartFile进行文件、图片上传和下载,以及文件流

    java通过MultipartFile进行文件 图片上传和下载 以及文件流 package com fh controller import com fh util UuidUtil import org apache commons io
  • 机组logisim P0课下

    首先是记录猪脚强调的注意事项 输入信号一般是通过MUX 多路选择器来实现对输出结果的控制 刚连接好电路时或者连接电路中 可能有一些电路莫名其妙是蓝色 这时关闭logisim后再次打开就好了 Comparator器件默认是有符号的 要调成un
  • git commit提交之后,push 失败

    情况 在git commit m 备注 之后 git push 出现错误 出现的错误是 我提交的代码格式不满足要求 原因是 因为在一些公司里面 有提交代码的一个格式 就比如 m后面的备注信息 是要求有一定格式的 但是我第一遍的格式是写错了
  • 灰度图像的彩色复原方法 ——以人脸着色为例

    灰度图像的彩色复原方法 以人脸着色为例 代码文件下载地址 摘要 灰度图像彩色复原在图像修复领域有广泛的应用 由于其涉及从低纬度空间向高纬度空间的映射 故而修复效果存在差异 本文以人脸为例研究灰度图像的彩色复原方法 在主流灰度图像彩色修复算法
  • 数据库如何热备份

    1 1数据库冷备份 概念 在固定的周期内 人为的将数据库中的数据进行备份 一般一式三份 缺点 1 可能会造成数据丢失 2 如果数据量很多 则可能会导致备份时间很长 并且备份不能正常完成 说明 虽然冷备份有诸多的缺点 但是最好进行冷备份 因为
  • 什么是决策表?什么是决策树?

    决策树 是在已知各种情况发生概率的基础上 通过构成决策树来求取净现值的期望值大于等于零的概率 评价项目风险 判断其可行性的决策分析方法 是直观运用概率分析的一种图解法 这种决策分支画成图形很像一棵树的树干 故称决策树 它是一种树形结构 每个
  • PyCharm,idea通过插件database连接带Kerberos的hive

    1 目的 PyCharm通过插件database连接带Kerberos的hive 2 异常 我windows已经配置好kerberos 可以kinit通 其其他工具以及可以正常访问 但是通过PyCharm 或者idea等工具报如下错误 Ca
  • Spring中的监听器与SpringMVC简述

    目录 Spring中的监听器 SpringMVC概述 web层的框架完成的相应的操作图示 SpringMVC开发使用步骤 SpringMVC流程图示 前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住分享一下给大家 点击跳转
  • javaScript实现-在两个文本框中输入值计算加减乘除法结果显示在另一个文本框中

    在两个文本框中输入值计算加减乘除法结果显示在另一个文本框中 方法一 用if else
  • Eclipse安转主题插件Theme出现问题解决办法

    1 2 3 直接在线安装输入Eclipse Color Theme Update Site 4 疯狂下一步 5 收功
  • 告别3D-DNA试试chromap和yahs做Hi-C辅助组装吧

    之前使用的是3D DNA流程做Hi C的辅助组装 它的最大优势就是输出结果可以对接下游的JBAT juicerbox with Assembly Tools 进行手动矫正 然而它点缺陷也很明显 处理速度不够快 且对植物的优化不行 同时目前许