rMATS输出结果文件只有表头

问题

我在用rMATS turbo做可变剪切分析。然而运行程序发现输出结果文件里只有表头:
rMATS输出结果文件只有表头

解决方法1

这个问题在软件github有几个issues提到过类似问题,如 most output files with only a header
说可能是由参数--readLength设置得和实际的read长度不符导致的。加个参数--variable-read-length即可。

其他情况

要是上面那个方法没解决问题就麻烦了,我是被这折腾了很久了。。又不报错,但就是没结果。

我是在CentOS7服务器上安装的,从github里下载rMATS turbo v4.1.0源码,进入软件目录通过命令build:

./build_rmats --conda

激活rMATS创建的环境使用,
我使用从ENCODE上下的BAM文件(单端测序数据比对的BAM文件),按照软件文档给例子进行参数输入运行后,没结果。

试了几个数据,都不行。

然后我试着自己从fastq文件使用bowtie2比对得到BAM文件,然而还是不行。

无语的是,我用实验室自己比对的BAM文件(双端测序数据)来测试,tmd居然出结果了!(rMATS支持单双端数据的)

最后,我试着直接将fastq文件作为输入,运行rMATS程序,这次成功得出结果!!!

因为rMATS内置比对的程序时STAR,我之前自己比对用的bowtie2。接下来,我用另外下的fq文件,各自用bowtie2和STAR进行比对,得到bam文件,作为rMATS的输入。
结果Bowtie2的bam文件无结果,STAR有结果。此外实验室的BAM文件,好像是用hisat2比对得到的。。

结论

最后我得出一个不怎么严谨的结论,rMATS的BAM输入,需要STAR运行得到的BAM文件。

Bowtie2,STAR只测试了一次。hisat2没测试过。测序数据只使用了单端测序数据。
结论多有不准。因为这莫名问题耗了不少时间了。。。有时间再慢慢研究了。
希望对有此问题的伙伴有所帮助。也欢迎大家评论告知真正原因!

其他

对于使用fastq文件作为rMATS输入的话,只能以fastq文本格式作为输入,不能以压缩格式。默认STAR工作线程数时4,而rMATS并未提供参数设置。
所以需要支持fastq.gz压缩文件和设置更多的线程数的话,需要编辑rmats.py文件的62行(可能有变动,以实际情况为准),添加修改STAR参数:
rMATS输出结果文件只有表头
不过我更推荐将STAR比对的部分单独提出来写个脚本运行。

上一篇:一天学会Trinity转录组无参组装


下一篇:2021-09-09