bwa mem 使用-5SP 这个参数,是因为 Hi-C reads 属于 long range data,比对的时候其假设和短片段的 PE reads 有所不同,可以参考一下 Phase Genomics 对这个参数的推荐和描述
“We use bwa mem to align Hi-C data, with the -5, -S, and -P options. These options aren’t documented that well in the online bwa documentation, but they are documented in the usage of bwa mem. -5 is sometimes called “the Hi-C option” as it was designed to help the aligner handle the statistical properties of Hi-C libraries better, mainly by reducing the amount of secondary and alternate mappings the aligner makes as those cause Hi-C data to become ambiguous. The -S and -P options cause the aligner not to try to use assumptions about the reads that might be true for shotgun or mate pair libraries in an effort to rescue more reads. In fact, using these options to avoid those rescue efforts usually results in more of the Hi-C data having a useful alignment!”
之前我写过 HapHiC 的安装与使用,有幸被作者摸了过来,指正了我教程中的部分问题,也对不少我含糊的地方作出详细说明和解释。老师非常有经验,我收获很大。沟通内容我整理到此篇文章中,希望对你也有一些帮助。
一、数据准备方向
Zeng 老师提出一个观点:
这一点我深表认同,有时候非得对着 CLR 数据组装真的很困难。对于数据比对,上一篇我提到了 HapHiC 建议
bwa mem
, 这里 Zeng 老师详细解释了原因:对于 chromap 比对,老师指出了关于比对错误率的问题,这块确实是个盲点,chromap 超高的时间成本优势让我忽略了这个问题;对于简单基因组可能问题不大,对于复杂基因组,或者分型 scaffolding, 这些比对问题可能给挂载带来更多问题。
同时也展示了
bwa mem
与 chromap 比对结果组装效果的对比:二、挂载方向
老师回复后我也请教了一些问题,部分地方我可能理解也有一定困难,为了避免误导就不解说了;
首先对于复杂基因组或同源多倍体基因组挂载质量的问题:
对于这里提到的几种组装错误问题,我进一步请教 “针对您提出识别组装错误的问题,我们是否有办法在获得组装结果时就做出识别,或调整组装结果?” 回复如下:
同时老师也提供了关于数据选择的建议:
那么对于组装错误,在使用 HapHiC 时,scaffolding 过程中是否有好的解决办法呢 “scaffolding 过程中,是否有些中间文件或提示,让我知道挂载问题是由于 chimeric contigs 或 collapsed contigs, 以便针对性调整?”
对于实际项目经验和使用参数,我也提出了问题 “对于可公开数据,如您提到的马铃薯,甘蔗,是否方便 share 一些使用的参数?” 答复如下:
三、其他方向
这里就是一些经验,以及对 HapHiC 本身的问题沟通了。首先关于集群环境的问题:
我在第一篇教程中曾表示 对于简单二倍体植物基因组,HapHiC 相比我使用的 yahs 没有明显优势, 老师也对这一观点做了答复:
关于 HapHiC 和 ALLHiC 之间的关系问题:
总结
可以看出老师对复杂基因组组装挂载非常有经验,也提供了很多帮助和建议;其中很多问题,如 chromap 比对错误率,组装错误类型等,都是我之前没有注意过的。完整沟通记录请移步我的 issue 中查看。
再次感谢 Zeng 老师的帮助。