怎么使用rmats进行可变剪切的分析

发布时间:2021-11-10 16:51:39 作者:柒染
来源:亿速云 阅读:302

本篇文章给大家分享的是有关怎么使用rmats进行可变剪切的分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。


rmats是目前使用的最广泛的可变剪切分析软件,该软件不仅可以识别可变剪切事件,还提供了定量和组间差异分析的功能,功能强大。该软件前后经历了多个版本,目前最新版本为v4.0.2, 相比之前的版本,v4.0之后的版本在运行速度,内存消耗,磁盘占用等方面进行了优化,最明显的就是运行速度,比之前快了100多倍。

安装也很简单,直接下载解压缩即可使用,这里不赘述。rmats可以识别以下五种类型的可变剪切事件

怎么使用rmats进行可变剪切的分析

软件的基本用法如下

python rmats.py  \
--b1 b1.txt --b2 b2.txt \
--gtf ref.transcript.gtf \
--od out_dir \
-t paired \
--readLength 101 \
--cstat 0.1 \
--libType fr-unstranded

b1.txt中保存的是每个样本比对参考基因组的bam文件的路径,示例如下

/bams/rep1.bam,/bams/rep2.bam

这种用法从bam文件开始,实用性更强,除此之外,也支持从fastq文件开始,用法如下

python rmats.py \
--s1 s1.txt --s2 s2.txt \
--gtf ref.transcript.gtf \
--bi /STARindex/hg19 \
--od out_dir \
-t paired \
--nthread 6 \
--readLength 151

S1.txt中保存的是每个样本fastq文件的路径,rmats会自动调用STAR进行比对,bi参数指定参考基因组STAR的索引,更多参数和细节请参考官方文档。

rmats中核心功能就是定量和差异分析,解释如下

1. 定量

rmats采用exon inclusion level 来定义样本中可变剪切事件的表达量,以外显子跳跃为例,正常的isoform称之为Exon Inclusion Isofrom, 发生了外显子跳跃的转录本称之为Exon Skipping Isofrom, 示意如下

怎么使用rmats进行可变剪切的分析

比对到inclusion  isoform上的reads用I表示,比对到skipping isoform上的reads用S表示, 则该外显子跳跃的可变剪切事件的表达量如下

怎么使用rmats进行可变剪切的分析

可以看到,exon inclusion level实际上是inclusion isofrom所占的比例,计算时,用长度校正了原始的reads数。其他类型的可变剪切事件也可以划分成上述两种isoform, 示意图如下

怎么使用rmats进行可变剪切的分析

可以看到,rmats在计算isofrom的长度时,提供了两种方式,二者的区别就在于是否考虑跳过的exon的长度,详细的公式在上图中共也有给出。

2. 差异分析

rmats 在差异分析时,比较的就是两组样本中inclusion level的差异,给定阈值c,  判断两个样本中对应inclusion level 的是否发生了变化,公式如下

怎么使用rmats进行可变剪切的分析

c这个阈值通过--cstat参数自定义,取值范围为0-1,代表的是两个样本中inclusion level的差值,0.1表示两个样本中该可变剪切事件的inclusion level相差10%。当然,实际计算过程是非常繁琐的,需要考虑数据的分布,对应的统计模型等各种因素,最终会给出每个可变剪切事件的p值和多重假设检验校正后的FDR值。

在输出目录下,有很多的文件,我们重点关注其中两种文件即可。

  1. AS_Event.MATS.JC.txt

  2. AS_Event.MATS.JCEC.txt

这里的AS_Event对应五种不同类型的可变剪切事件,每种类型是一个单独的文件,而JCJCEC对应的是isoform effective length的两种计算方式。由于两种计算方式没有绝对的孰优孰劣的区分,所以同时给出两种结果,在这些文件中,包含了定量和差异的结果

怎么使用rmats进行可变剪切的分析

IJC表示inclusion isoform counts, SJC表示是skipping isoform counts, 生物学重复样本用逗号分隔;IncFormLen代表effective inclusion isoform length, SkipFormLen代表effective inclusion isoform length;lencLevel代表定量的结果,InclevelDifference就是两组样本中表达量的差值,通过PvalueFDR可以对结果进行过滤和筛选。

除了定量和差异的结果,还给出了每种可变剪切事件对应的exon的区间信息,示意如下

怎么使用rmats进行可变剪切的分析

以上示例是外显子跳跃中的区间信息,其他类型的表头会有一定差异,但是意思是一样的。

rmats中,识别可变剪切是以exon为单位的,只需要比较邻近的3到4个exon的表达情况,就可以确定一个可变剪切事件是否发生,这个思路从可变剪切最核心的地方,即exon的变化出发进行分析,直接有效,但是由于其对问题的高度抽象和简化,导致对应的结果看起来不够直观。

以上就是怎么使用rmats进行可变剪切的分析,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

推荐阅读:
  1. 如何使用python剪切视频
  2. Python可变对象与不可变对象原理的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

上一篇:如何使用MISO进行可变剪切的分析

下一篇:Django中的unittest应用是什么

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》