即使路径正确,TopHat也找不到bowtie索引文件

时间:2014-10-05 22:02:03

标签: bash bioinformatics sungridengine

我在bash脚本中使用bowtie-index生成了bowtie索引文件,如下所示:

bowtie-build $FA_FILE $OUTPUT_BASE

(脚本可以在这里找到:https://github.com/kennethphough/bioinformatics/blob/master/sge/sge_build_index

我希望我的簇的每个节点将我的序列文件与染色体对齐,而不是与整个基因组对齐。因此,理论上如果我为每个节点上的相同序列文件运行每个染色体的tophat实例,它应该比在整个基因组的一个节点上运行tophat更快。

我确保我的bowtie索引文件的位置是这样导出的:

export BOWTIE_INDEXES="$(dirname ${EBWT})/"

然后像这样执行tophat:

tophat -p 4 -G $GTF -o $OBASE $Chr $FASTQ

$GTF包含注释文件的路径,$Chr包含索引文件的文件名(不包括文件扩展名.ebwt),$FASTQ包含我的序列读取的路径文件。

(脚本可以在这里找到:https://github.com/kennethphough/bioinformatics/blob/master/sge/sge_tophat

当我运行脚本时,我得到一个错误,说bowtie index不能为foudn。摘录如下:

[Sun Oct  5 15:08:48 2014] Beginning TopHat run (v1.1.2)
-----------------------------------------------
[Sun Oct  5 15:08:48 2014] Preparing output location /home/kennethphough/GSE58365/fast/chr11_gl000202_random.1/
[Sun Oct  5 15:08:48 2014] Checking for Bowtie index files
Error: Could not find Bowtie index files /home/kennethphough/genome/hg19/chr11_gl000202_random.1.*

上述错误的问题指向文件是chr11_gl000202_random.1.ebwt,我已经确认它在那里。任何导致出错的人都将不胜感激。

Bowtie版本是0.12.7 Tophat版本是1.1.2

1 个答案:

答案 0 :(得分:0)

问题在于,一个领结索引有多个文件。因此,对于上面的示例,chr11_gl000202_random具有:

chr11_gl000202_random.1.ebwt
chr11_gl000202_random.2.ebwt
chr11_gl000202_random.3.ebwt
chr11_gl000202_random.rev.1.ebwt
chr11_gl000202_random.rev.1.ebwt

所以不要传递没有扩展名的文件名,而是需要像这样得到染色体序列名称:

Chr=`echo "$FNAME" | awk -F. '{print $1}'`

我在github上更新我的脚本以反映更改。