这两天参照一篇文献,从 NCBI SRA 下载了若干 .sra 文件来处理,发现数据是 single-end 的,相对较老(2012 年),read length 为 35 bp,短一些,文献中说他用的是 tophat 1.1.2, bowtie 0.12.7,设置了 the minimum and maximum intron size 参数,个人理解即设定了 -i 和 -I 值。
较新的 tophat 与 bowtie
用软件仓库中提供的 tophat 和 bowtie 试着跑了下,发现不能成功,出现了错误。
软件版本:
- tophat: v2.0.13
- bowtie: v1.1.1.0
# 没有服务器,用渣渣笔记本勉强跑
tophat -o tophat/ -p 2 --bowtie1 -i 20 -I 40000 -G gff_file_path bowtie1_index_db_path fastq_file
出现错误如下:
[2016-08-28 23:33:18] Mapping left_kept_reads.m2g_um_unmapped to genome segment_juncs with Bowtie (1/1)
open: No such file or directory
Error: bam2fastx failed to open BAM file tophat//tmp/left_kept_reads.m2g_um_unmapped.bam
[2016-08-28 23:33:51] Joining segment hits
[2016-08-28 23:35:26] Reporting output tracks
[FAILED]
Error running /usr/bin/tophat_reports --min-anchor 8 --splice-mismatches 0 ……………………
Google 了一下,没有很好的解决方案。尝试后发现 -i, -I 使用默认值则不会出错,成功执行;而设定了对应的 20, 40000 后则运行失败。
旧版本的 tophat 与 bowtie
下载文献中所述版本的软件,设定参数,执行,成功。
因为要用特定版本的软件,写了个脚本。
#!/bin/bash
export PATH=/home/lhtk/bio/bowtie-0.12.7:/home/lhtk/bio/tophat-1.1.2.Linux_x86_64:$PATH
# 此前用旧版的 bowtie 重新构建了 bowtie index db
tophat -o tophat_1.1.2 -i 20 -I 40000 -G gff_file_path bowtie_index_db_path fastq_file
发现旧版本软件要比较新版软件运行效率低好多,比较慢。