rMATS输出结果文件只有表头

问题#

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

解决方法1#

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

解决方法2#

根据测序数据正确设置好-t 参数。单端数据使用 -t paired也是会导致没结果

其他情况#

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

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

./build_rmats --conda

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

试了几个数据,都不行。

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

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

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

其他#

对于使用fastq文件作为rMATS输入的话,只能以fastq文本格式作为输入,不能以压缩格式。默认STAR工作线程数时4,而rMATS并未提供参数设置。
所以需要支持fastq.gz压缩文件和设置更多的线程数的话,需要编辑rmats.py文件的62行(可能有变动,以实际情况为准),添加修改STAR参数:

不过我更推荐将STAR比对的部分单独提出来写个脚本运行。

更新#

rmats当前最新版本是4.1.1
能自动识别后缀是不是gz。所以无需添加--readFilesCommand zcat参数了,以及可以设定线程数通过'--nthread' (github最新)

posted @   何物昂  阅读(1658)  评论(1编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· Apache Tomcat RCE漏洞复现(CVE-2025-24813)
点击右上角即可分享
微信分享提示
主题色彩