小教程收藏

bwa双端数据比对错误:paired reads have di

2020-06-16  本文已影响0人  生信编程日常

用bwa对一个自己构建的模拟数据进行比对的时候,发现bwa sampe过程中直接error跳出,报错:paired reads have different names。但是我去检查了一下报错的两条reads,这两个名字确实是一致的,并且在两fq文件中的位置一致。

网上搜了一些原因,发现了这个讨论:https://github.com/lh3/bwa/issues/228。感觉这个比较靠谱:

于是我先下载了fastq tools,打算用fastq-sort先确保一下文件是排序过,fq1和fq2名字是完全对应的。

 fastq-sort test_pe_100.fq1 > test_pe_100_sort.fq1
 fastq-sort test_pe_100.fq2 > test_pe_100_sort.fq2

重新运行bwa aln和bwa sampe,发现还是报错。并且在bwa aln fq2的时候,我发现最后有这么一条:
[bwa_sai2sam_pe_core] 913812 sequences have been processed.
这里处理的数据与我实际的数据不符,此处应该有920000条序列。所以应该是哪里构建的reads不对。

但是实在不知道哪里有问题,于是试着用截图中的第一种方法 BBtools去检查一下。

bash ~/bbmap/repair.sh in=${path}/test_pe_100.fq1 \
        in2=${path}/test_pe_100.fq2 \
        out1=${path}/renamed1.fq \
        out2=${path}/renamed2.fq

虽然没给我修复成功,但是中间报了一个错误,让我知道是咋回事了。报错提示的是,fq1和fq2中的某对reads长度不一致。 检查了一下发现真的是不一致。 最后重新构建了一遍数据,bwa比对就没再报错了。

bwa的sampe和mem都可能会出现这个错误,当这个错误出现时,可能存在有以下原因:
1) fq1和fq2的reads名字不一致;
2)fq1和fq2对应reads的长度不一致;
3)fq1和fq2中的reads顺序不同
......

欢迎各位关注!


上一篇下一篇

猜你喜欢

热点阅读