使用BWA创建输入BAM文件以进行下游分析

时间:2016-09-08 19:38:21

标签: alignment bioinformatics genome

我有大肠杆菌的Illumina配对末端读数,我用它来创建草稿组装(SPAdes)。我现在的任务是创建我将与Pilon一起使用的输入BAM文件 - 用于改进草稿程序集。

我决定在这里使用文档来使用BWA:http://bio-bwa.sourceforge.net/bwa.shtml#3

计划创建参考基因组的索引,创建比对,然后转换为BAM文件。

这是我用来索引引用的命令:

bwa index -p bwa_indices/B055 temp/spades/scaffolds.fasta

此命令输出以下文件: B055.amb B055.ann B055.bwt B055.pac B055.sa

下一步是生成对齐文件 - 我使用了以下命令:

bwa aln -t 20 temp/spades/scaffolds.fasta temp/spades/corrected/B055_S5_R1_filtered_1P.fastq.00.0_0.cor.fastq.gz > bwa_indices/B055_R1.sai
#bwa aln -t 20 temp/spades/scaffolds.fasta temp/spades/corrected/B055_S5_R1_filtered_2P.fastq.00.0_0.cor.fastq.gz > bwa_indices/B055_R2.sai

运行第一个命令后,我收到以下输出:

[bwa_aln] 17bp reads: max_diff = 2
[bwa_aln] 38bp reads: max_diff = 3
[bwa_aln] 64bp reads: max_diff = 4
[bwa_aln] 93bp reads: max_diff = 5
[bwa_aln] 124bp reads: max_diff = 6
[bwa_aln] 157bp reads: max_diff = 7
[bwa_aln] 190bp reads: max_diff = 8
[bwa_aln] 225bp reads: max_diff = 9
[bwa_aln] fail to locate the index

最后一行令我烦恼了一下。有一个输出文件(B055_R1.sai),但它是空的。

我可以清楚地看到,在我的对齐命令中,没有对先前创建的任何索引文件的引用,但是当我查看文档(http://bio-bwa.sourceforge.net/bwa.shtm)时,我看不到引用任何文档的选项索引文件。谷歌搜索引导我到一个网站,说我需要将我的参考fasta文件放在与索引文件相同的目录中,我甚至将我的草稿组件fasta文件的名称从scaffolds.fasta更改为B055.fasta - 但是无济于事。我还解压了fastq.gz文件并将扩展名从fastq更改为fq - 所有这些都遇到了不成功的结果。这些可能仍然是问题,但在我看来,在最后一次调用中引用索引文件是最紧迫的问题。

有人可以指出我正确的方向吗?我正在使用BWA版本:0.7.5a-r405(我还安装了最新版本(版本:0.7.12-r1039),没有任何改进),CentOS 6.7,具有34个内核和大量内存。

提前谢谢。

2 个答案:

答案 0 :(得分:0)

基于this discussion我认为你应该使用var c2= parseInt(i) + 1;来执行你的路线。

首先,生成索引文件:

bwa mem

然后执行对齐:

# with this the index file will be in the same dir of your reference
bwa index path/to/your/index/scaffolds.fasta

您可以将代码放在bash脚本中,或者在同一行中键入所有内容,如下所示:

bwa mem \
    path/to/your/index/scaffolds.fasta \
    /path/to/R1.fastq.gz \
    /path/to/R2.fastq.gz | samtools view -1 -bS - > youBamFile.bam

说明:

  • bwa mem path/to/your/index/scaffolds.fasta /path/to/R1.fastq.gz /path/to/R2.fastq.gz | samtools view -1 -bS - > youBamFile.bam :对齐您的配对末尾读取并将其传递给samtools程序。

  • bwa mem:将您的sam文件排序并压缩为bam格式。

我没有测试命令但可能会有效。

答案 1 :(得分:0)

根据不同论坛中某人的一些建议,我更改了文件的名称,使其全面一致。

mkdir -p bwa_indices
bwa index -p B055 -a is B055.fa
bwa aln -t 20 B055.fa ../temp/spades/corrected/B055_S5_R1_filtered_1P.fq > B055_R1.sai

但是,我仍然收到错误。我认为这是过时/不正确的文档问题。

文档(http://bio-bwa.sourceforge.net/bwa.shtml#3)具有以下对齐方式(请注意in.db. fasta ):

aln     bwa aln [-n maxDiff] [-o maxGapO] [-e maxGapE] [-d nDelTail] [-i nIndelEnd] [-k maxSeedDiff] [-l seedLen] [-t nThrds] [-cRN] [-M misMsc] [-O gapOsc] [-E gapEsc] [-q trimQual] <in.db.fasta> <in.query.fq> > <out.sai> 

我一直在使用以下内容(我尝试了.fa和.fasta扩展名):

bwa aln -t 20 B055.fa B055_R1_1P.fq  > B055_R1.sai

我删除了.fa扩展程序并运行了。

bwa aln -t 20 B055 B055_R1_1P.fq  > B055_R1.sai