拖更了好久,有没有一年?我自己都不知道了
可变剪切,即alternative splicing, 指的是在mRNA前体到成熟mRNA的过程当中,不同的剪切方式使得同一个基因可以产生多个不同的转录本, 最终产生不同的蛋白质。由于结构决定功能,而序列决定结构,可变剪切可能会对蛋白质功能产生巨大影响。许多文献也表明,可变剪切在发育、肿瘤发生等过程中发挥重要作用。
目前已经有非常多可以用于可变剪切的软件,包括JuncBASE、rmats、ASprofile、MISO、suppa、leafcutter等等等等。。。关于rmats和suppa,生信技能树和生信菜鸟团已经有了许多的教程。今天,我主要介绍另一个可变分析软件Spladder。
1、Spladder简介和安装
Spladder于2016年发表在《Bioinformatics》,也是后来2018年《Cancer Cell》上TCGA可变剪切数据综合分析使用的软件。Spladder可以识别5种可变剪切,包括(多个)外显子跳跃、3’端可变剪切、5‘端可变剪切、内含子保留和互斥外显子。
Spladder的安装也非常简单,直接通过pip安装就可以,只是目前尚不能通过conda安装。
代码语言:javascript复制pip install spladder
Spladder具有三种运行模式,分别是build模式、test模式和viz模式。其中,build模式用于构建剪切图并识别可变剪切事件,test模式用于比较不同分组之间的可变剪切的差别,viz模式顾名思义用于可视化。
2、Spladder实际操作
对于实际数据,总的可变剪切事件的识别主要包括4个步骤。
- 单个剪切图
- 合并剪切图
- 图定量
- 可变剪接事件定量
cat ../case | while read id
do
spladder build -o ./ -a ~/reference/gtf/hg38.gtf -b ../4.bam/${id}.bam --merge-strat single --no-extract-ase
echo ../4.bam/${id}.bam >> alignments.txt
done
sed -i ':t;N;s/n/,/;b t' alignments.txt
spladder build -o ./ -a ~/reference/gtf/hg38.gtf -b `cat alignments.txt` --merge-strat merge_graphs --no-extract-ase
cat ../case | while read id
do
spladder build -o ./ -a ~/reference/gtf/hg38.gtf -b ../4.bam/${id}.bam --merge-strat merge_graphs --no-extract-ase --quantify-graph --qmode single
done
spladder build -o ./ -a ~/reference/gtf/hg38.gtf -b `cat alignments.txt` --merge-strat merge_graphs --no-extract-ase --quantify-graph --qmode collect
for type in exon_skip intron_retention alt_3prime alt_5prime mult_exon_skip mutex_exons
do
spladder build -o ./ -a ~/reference/gtf/hg38.gtf -b `cat alignments.txt` --event-types ${type}
done
3、差异分析
对于许多实际数据来讲,都是两分组或者一个对照组对应多个实验组的实验设计。对于这种情况,我们就可以使用Spladder的test模式。
代码语言:javascript复制spladder test --conditionA aligmmentA1.bam,alignmentA2.bam
--conditionB alignmentB1.bam,alignmentB2.bam
--outdir spladder_out
4、结果解读
在运行之后,Spladder会生成多种格式的文件,包括GFF3、HDF5和TXT格式的文件。其中,GFF3文件可在IGV或UCSC中进行可视化,而HDF5格式文件对于大多数人来说操作起来有一定的困难,所以主要可以关注TXT文件。
可变3’端/5‘端
对于这两种情况,除了染色体序号,所在基因和染色体 /-链信息以外,还有以下重要信息:
- valid: 剪切事件可信,则为1,不可信,则为0;
- e1_cov: 剪切事件中前一个外显子区域的平均覆盖度;
- e2_cov: 剪切事件中可变区域的平均覆盖度;
- e3_cov: 剪切事件中后一个外显子区域的平均覆盖度;
- e1e3_conf: 跨越长内含子的剪切事件的数目;
- e2_conf: 跨越短内含子的剪切事件的数目;
外显子跳跃
- valid: 剪切事件可信,则为1,不可信,则为0;
- e1_cov: 剪切事件中前一个外显子区域的平均覆盖度;
- e2_cov: 被跳跃的外显子区域的平均覆盖度;
- e3_cov: 剪切事件中后一个外显子区域的平均覆盖度;
- e1e2_conf: 被跳跃的外显子到左侧翼外显子区域的剪切事件的数目;
- e2e3_conf: 被跳跃的外显子到右侧翼外显子区域的剪切事件的数目;
- e1e3_conf: 两侧外显子区域的剪切事件的数目;
内含子保留
- valid: 剪切事件可信,则为1,不可信,则为0;
- e1_cov: 剪切事件中前一个外显子区域的平均覆盖度;
- e2_cov: 保留的内含子区域的平均覆盖度;
- e3_cov: 剪切事件中后一个外显子区域的平均覆盖度;
- e1e3_conf: 跨越内含子的剪切事件的数目;
- e2_cov_region:覆盖度>0的区域占内含子的比例;
互斥外显子
- valid: 剪切事件可信,则为1,不可信,则为0;
- e1_cov: 剪切事件中左侧翼外显子区域的平均覆盖度;
- e2_cov: 剪切事件中第一个被跳跃的外显子区域的平均覆盖度;
- e3_cov: 剪切事件中第二个被跳跃的外显子区域的平均覆盖度;
- e4_cov: 剪切事件中右侧翼外显子区域的平均覆盖度;
- e1e2_conf: 从左侧翼外显子到第一个跳跃的外显子的剪切事件的数目;
- e2e4_conf: 从第一个跳跃的外显子到右侧翼外显子的剪切事件的数目;
- e1e3_conf: 从左侧翼外显子到第二个跳跃的外显子的剪切事件的数目;
- e3e4_conf: 从第二个跳跃的外显子到右侧翼外显子的剪切事件的数目;
其实,还有很多细节我没有介绍到,具体内容可以参考官网的教程,Welcome to SplAdder’s documentation! — SplAdder 3.0.2 documentation。
参考文献如下:
- Kahles, A. et al. Comprehensive Analysis of Alternative Splicing Across Tumors from 8,705 Patients. Cancer Cell 34, 211-224.e6 (2018).
- Kahles, A., Ong, C. S., Zhong, Y. & Rätsch, G. SplAdder: identification, quantification and testing of alternative splicing events from RNA-Seq data. Bioinformatics 32, 1840–1847 (2016).