第一次做差异剪接分析,rMATS做完后一头雾水,查阅资料整理了一下结果文件。
- 我使用的版本是v4.1.2,用conda安装的,软件的安装和使用就不细说了,网上已经有很多帖子,这里只对几种比较重要的结果文件进行解读。说是解读,其实也只是翻译了一下,目的是帮助自己更好理解。
一些重要的区分
JC和JCEC区分
rMATS中,JC是Junction Counts的缩写,表示跨越剪切位点的reads(暂且叫为JC reads)数量,JCEC是Junction Counts和Exon Counts的缩写合并,Exon Counts表示不跨越剪切位点的reads数量,JCEC可以理解为所有比对上的reads(暂且叫为JCEC reads)。他们的关系见下图:
IJC和SJC区分
这里引用一位老哥的帖子https://www.plob.org/article/22921.html,自己做了一些标注
IJC表示外显子包含的reads数目
SJC表示外显子跳跃的reads数目
注意,图中I和S都是外显子,另外外显子包含是我瞎起的名字。
rMATS中的AS分类
- SE 外显子跳跃
- A5SS 5'端可变剪切
- S3SS 3'端可变剪切
- MXE 外显子选择性跳跃
- RI 内含子保留
结果文件类型
rMATS生成的文件大致以下几种:
- [AS_Event].MATS.JC.txt: 只计算Junction Counts(跨越剪切位点的reads)的最终输出结果
- [AS_Event].MATS.JCEC.txt: 计算了跨越剪切位点的reads和不跨越剪切位点的最终输出结果
- fromGTF.[AS_Event].txt: 通过GTF文件和RNA鉴定的所有选择性剪接(AS)事件
- fromGTF.novelJunction.[AS_Event].txt: 考虑了RNA后确定的选择性剪接(AS)事件,不仅仅考虑GTF文件。这个结果只用跨越剪切位点进行计算。
- fromGTF.novelSpliceSite.[AS_Event].txt: 只用不跨越剪切位点计算的结果。分析时使用参数 --novelSS 才会计算。
- JC.raw.input.[AS_Event].txt: 跨越剪切位点的reads的AS事件计数
- JCEC.raw.input.[AS_Event].txt: 所有reads的AS事件计数
[AS_Event].MATS.JC.txt的结果文件
<font size=1>dfjioan</font>
第几列 | 第几列 | 第几列 | 第几列 | ||
---|---|---|---|---|---|
表头 | 描述 | A3SS.MATS.JC.txt MXE.MATS.JC.txt |
RI.MATS.JC.txt | SE.MATS.JC.txt | A5SS.MATS.JC.txt |
ID | AS事件编号 | 1 | 1 | 1 | 1 |
GeneID | 可变剪接事件所在基因编号 | 2 | 2 | 2 | 2 |
geneSymbol | 可变剪接事件所在基因名称 | 3 | 3 | 3 | 3 |
chr | 可变剪接事件所在染色体 | 4 | 4 | 4 | 4 |
strand | 可变剪接事件所在链的方向 | 5 | 5 | 5 | 5 |
longExonStart_0base | 较长外显子的起始位点 | 6 | |||
longExonEnd | 较长外显子的终止位点 | 7 | |||
shortES | 较短外显子的起始位点 | 8 | |||
shortEE | 较短外显子的终止位点 | 9 | |||
flankingES | 差异外显子附近的外显子的起始位点 | 10 | |||
flankingEE | 差异外显子附近的外显子的终止位点 | 11 | |||
exonStart_0base | 外显子的起始位点 | 6 | |||
exonEnd | 外显子的终止位点 | 7 | |||
1stExonStart_0base | 第一个外显子的起始位点 | 6 | |||
1stExonEnd | 第一个外显子的终止位点 | 7 | |||
2ndExonStart_0base | 第二个外显子的起始位点 | 8 | |||
2ndExonEnd | 第二个外显子的终止位点 | 9 | |||
riExonStart_0base | 包含内含子的外显子的起始位点 | 6 | |||
riExonEnd | 包含内含子的外显子的终止位点 | 7 | |||
upstreamES | 上游外显子的起始位点 | 10 | 8 | 8 | |
upstreamEE | 上游外显子的终止位点 | 11 | 9 | 9 | |
downstreamES | 下游外显子的起始位点 | 12 | 10 | 10 | |
downstreamEE | 下游外显子的起始位点 | 13 | 11 | 11 | |
ID | 12 | 14 | 12 | 12 | |
IJC_SAMPLE_1 | 样品1外显子包含(见下面的解释)的reads数目,重复样品用逗号隔开 | 13 | 15 | 13 | 13 |
SJC_SAMPLE_1 | 样品1外显子跳跃的reads数目,重复样品用逗号隔开 | 14 | 16 | 14 | 14 |
IJC_SAMPLE_2 | 样品2外显子包含(见下面的解释)的reads数目,重复样品用逗号隔开 | 15 | 17 | 15 | 15 |
SJC_SAMPLE_2 | 样品2外显子跳跃的reads数目,重复样品用逗号隔开 | 16 | 18 | 16 | 16 |
IncFormLen | 外显子包含转录本的长度,用于标准化 | 17 | 19 | 17 | 17 |
SkipFormLen | 外显子跳越转录本的长度,用于标准化 | 18 | 20 | 18 | 18 |
PValue | 19 | 21 | 19 | 19 | |
FDR | 校正后的PValue | 20 | 22 | 20 | 20 |
IncLevel1 | 样本1的外显子包含的水平。重复样品用逗号分隔。根据标准化计数计算 | 21 | 23 | 21 | 21 |
IncLevel2 | 样本2的外显子包含的水平。重复样品用逗号分隔。根据标准化计数计算 | 22 | 24 | 22 | 22 |
IncLevelDifference | average(IncLevel1)-average(IncLevel2) | 23 | 25 | 23 | 23 |
</font>
summary.txt文件
这里用以下命令对summary.txt进行了转置,更方便查看
for i in {1..9}; do cut -f $i summary.txt |xargs|sed 's/ /\t/g' ;done
EventType | SE | A5SS | A3SS | MXE | RI |
---|---|---|---|---|---|
AS事件类型 | 外显子跳跃 | 5'端可变剪切 | 3'端可变剪切 | 外显子选择性跳跃 | 内含子保留 |
TotalEventsJC 两组样本中)所有跨越剪切位点事件的数量 |
12548 | 527 | 534 | 1047 | 888 |
TotalEventsJCEC (两组样本中)所有跨越与不跨越剪切位点事件的数量 |
12818 | 538 | 550 | 1059 | 915 |
SignificantEventsJC (两组样本中)跨越剪切位点事件达到显著水平的数量 |
1088 | 98 | 82 | 239 | 212 |
SigEventsJCSample1HigherInclusion (与样本2相比,)样本1中跨越剪切位点事件达到显著水平的数量 |
370 | 60 | 45 | 92 | 144 |
SigEventsJCSample2HigherInclusion (与样本1相比,)样本2中跨越剪切位点事件达到显著水平的数量 |
718 | 38 | 37 | 147 | 68 |
SignificantEventsJCEC (两组样本中)跨越与不跨越剪切位点事件达到显著水平的数量 |
1128 | 106 | 95 | 252 | 238 |
SigEventsJCECSample1HigherInclusion (与样本2相比,)样本1中跨越与不跨越剪切位点事件达到显著水平的数量 |
391 | 66 | 52 | 100 | 163 |
SigEventsJCECSample2HigherInclusion (与样本1相比,)样本2中跨越与不跨越剪切位点事件达到显著水平的数量 |
737 | 40 | 43 | 152 | 75 |
其他文件的表头信息也差不多。
参考资料:
rMATS差异可变剪切分析 | Public Library of Bioinformatics (plob.org)
rmats-turbo/README.md at v4.1.2 · Xinglab/rmats-turbo · GitHub