SRAtoFastq | 任何人都能自主分析测序原始数据
蓦然回首
在身不由己,无法有什么动作的时候,我就会开始天马星空,胡思乱想。隐约想起了几年前,在华南农林学院某会议室,我大体介绍了一下 TBtools 。介绍完了,有收到这么一个问题,“能不能直接分析测序原始数据?比如 RNA-seq”。
我已经忘了当时我是如何回答。当然,很明显,主题是不能。因为在那时看来,即使是简单的转录组数据分析,本身也涉及较大的计算量。对绝大多数 TBtools 用户来说,可能工作设备就是一个普通的上网本,如 4G 内存甚至2G,4个线程 甚至...。其实类似的分析,从界面化软件来说,有 CLC,Genious ... 从不少公司来说,有成熟的云平台。用户其实只需要支付一定的费用,比如一年数千以上,就可以搞定。成熟的商业服务,其实我个人觉得很值。以前这么觉得,现在依旧这么觉得。
于是,这个事情,一放就是几年。
近期在忙学位论文的事情,有时候突然有一些想法,想看看某个物种某些基因在某些组织或者处理前后的表达模式。勉强算是验证 Naive 科研猜想。于是这个时候,又要回去搞命令行。多少觉得麻烦,我其实已经很久没有碰 Linux 了。毕竟我主要还是做生物学问题,并没有太多数据需要跑跑。那现在咋办?
转念一想,当年的问题,其实没那么简单。因为他不仅仅是一个用不用的问题,更是一个用多少的问题。比如买个服务器天天鼓捣和买个服务器吃灰,这是两码事。用户的需求总是千变万化,对于只是需要分析一小套数据(比如Case-Control 6 个样品),而且是公开数据的人来说,其实为此购买商业软件或者云平台,很难认为值得。这个对于商业公司来说,亦是相同:
小单,并不足够利润,甚至不及沟通成本
分析结果用户不一定满意,不接反而省事
从销售出发,赚这单,不如卖人情;然而销售和技术是两码事,还预占公司计算资源,无解
结论即是困局。两边都觉得不值。那咋办?
回过头来,这便是缺口,一个公益的缺口。(好吧,脏活累活大家都不想做,那就我来做)。
简陋计划
我一直提及,并不想写一个打包软件。TBtools 现在也不是打包软件。感兴趣的还是可以看看《Molecular Plant》期刊上 TBtools 的文稿。结合实际情况,组学数据分析或者是转录组测序分析涉及到非常多的成熟软件,比如 sra-toolkits 等。这些本身跟 BLAST 一样,几乎没有重新实现或者重写意义...
于是,打包似乎是无解之解。两相权衡,那就以插件的形式逐个分发。暂定计划如下:
SRA 数据下载 - 已完成;前述写了两个推文,两个功能完全可以胜任
SRA 数据格式转换为 Fastq 格式
Fastq 数据质量查看?
测序数据质量控制
表达量矩阵估计
....
基于我个人的习惯,计划让所有步骤都能在普通的个人工作电脑,即不超过 4G 内存的本子上完成....
插件小四 - SRA to Fastq
Emmm,如何完美获取公开的测序原始数据,在《生信札记》上我已经给出解决方案。今天释放 TBtools 插件 “小四”,SRAtoFastq。
大多数时候,我们下载到的原始数据是 .sra 格式。进行下一步数据分析,需要自行将 .sra 格式转换为 fastq 格式(Emmm,其实也存在少数软件直接支持.sra数据,此处不展开)。
整体上,完成这一步只有两个做法:
使用NCBI 的 SRA toolkits
去NCBI,用内部的 Java 程序
显然,2. 不可行,故选择 1.。软件的安装其实简单,只要下载,解压之后即可使用。TBtools 的目的是“拆除使用门槛”。于是,插件小四是一个打包插件。用户只需要安装这个插件,皆可直接在 TBtools 中,进行 .sra 格式到 .fastq 格式的转换。
插件安装
计划接下来比较多的功能以插件的形式发布,在测试过程中,我发现现有的安装模式显得麻烦。于是做了优化。
修改前,用户需要一个跳转目录,找到插件文件位置。
修改后,用户可以直接拖拽,放置,从而瞬间完成输入
只需要将插件放进去,即可完成选择
点击打开,即可完成插件安装
插件的使用
Emmm,这个有点太简单。
直接拖拽输入 .sra 文件(支持多文件...)
注意:输出文件与输入文件在同一个目录下,所以建议先把.sra 文件复制或者移动到工作目录。
点击 Start 等待完成即可
由于是单端数据,所以一个样品只会输出一个.fastq文件。若是双端测序,则每个样品有两个文件.fastq文件