Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >对featureCounts来源的表达矩阵使用DEXSeq分析可变剪切

对featureCounts来源的表达矩阵使用DEXSeq分析可变剪切

作者头像
生信技能树
发布于 2019-12-12 03:54:18
发布于 2019-12-12 03:54:18
3.2K00
代码可运行
举报
文章被收录于专栏:生信技能树生信技能树
运行总次数:0
代码可运行

featureCounts我们粉丝都耳熟能详了,我们转录组流程介绍的对比对后的bam文件基于基因注释文件定量的首选软件,用法非常简单,关键是速度飞快,吊打htseq-counts几条街,而用DEXSeq分析可变剪切,外显子差异表达呢,我们以前也分享过用法,那个时候是使用示例的表达矩阵。

  • 用DEXSeq分析可变剪切,外显子差异表达

回顾一下featureCounts的命令及表达矩阵结果

使用featurecounts时候,我们通常的命令及参数是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gtf="/home/yb77613/reference/gtf/gencode/gencode.v32.annotation.gtf"
bin_featureCounts="/home/yb77613/biosoft/featureCounts/subread-1.5.3-Linux-x86_64/bin/featureCounts";
$bin_featureCounts -T 4 -p -t exon -g gene_name  -a $gtf -o all.counts.id.txt  ../hisat2/*.bam 1>counts.id.log 2>&1

实际上,就一个 -t exon -g gene_name 需要理解一下,就是报名数reads数量的时候,只考虑gtf文件里面记录是exon的坐标的reads,然后最后的输出矩阵,以gene_name信息为行。

image-20191104175328158

可以很明显的看到,前面的6列,是基因的名字,染色体,起始终止坐标,正负链信息,基因长度信息。我圈起来的那个是miRNA,所以基因长度是68bp。

认识一下DEXSeq的输入表达矩阵

但是使用DEXSeq分析可变剪切,外显子差异表达,需要的不是基于基因的表达矩阵,而是基于exon的,比如官网例子:

image-20191104175538781

官网提供的是HTseq-count软件的结果转为DEXSeq输入的脚本,因为HTseq-count软件速度实在是不敢恭维,我还是想使用featurecounts。虽然它并没有DEXSeq输入的接口,但是简单谷歌,就可以搜得到解决方法;https://github.com/vivekbhr/Subread_to_DEXSeq

其实就是因为它需要不一样的gtf文件和gff文件。

安装GitHub插件处理gencode数据库的gtf文件

这里采用最原始的下载即可:https://github.com/vivekbhr/Subread_to_DEXSeq.git

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd 
cd biosoft 
git clone https://github.com/vivekbhr/Subread_to_DEXSeq.git
cd Subread_to_DEXSeq
wget ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_32/gencode.v32.annotation.gtf.gz
gunzip gencode.v32.annotation.gtf.gz

使用GitHub代码对gtf文件进行预处理:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
which python
which pip 
pip install HTSeq
cd ~/biosoft/Subread_to_DEXSeq
python dexseq_prepare_annotation2.py -f out_gv32.gtf gencode.v32.annotation.gtf   out_gv32.gff 

速度很快,得到的文件如下:

image-20191104184822694

这个时候,需要记住的是,gtf文件可以被featureCounts用来定量,而后缀为gff的文件,是DEXSeq包需要的。

检查两个文件

首先看看后缀为gff的文件,是DEXSeq包需要的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
suppressPackageStartupMessages(library("DEXSeq"))
suppressPackageStartupMessages(library("pasilla"))
inDir <- system.file("extdata", package="pasilla")  
gffFile <- list.files(inDir, pattern="gff$", full.names=TRUE) 
gffFile

我的电脑的DEXSeq包举例的这个gff文件 在:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/Library/Frameworks/R.framework/Versions/3.5/Resources/library/pasilla/extdata/Dmel.BDGP5.25.62.DEXSeq.chr.gff

内容如下所示

image-20191106214450287

可以看到我们针对gencode数据库的gtf文件的处理,得到的文件也是符合要求的,跟这个R包自带的果蝇的例子类似,就是记录每个基因的多个转录本坐标,一个基因有多个转录本,就融合一下。

image-20191202111326033

然后看看gtf文件,可以看到跟gff文件的区别几乎没有。

image-20191202111420077

使用featureCounts定量

接下来就可以使用featureCounts对我们的bam文件进行定量啦,先看看示例数据:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
suppressPackageStartupMessages(library("DEXSeq"))
suppressPackageStartupMessages(library("pasilla"))

inDir <- system.file("extdata", package="pasilla")
countFiles <- list.files(inDir, pattern="fb.txt$", full.names=TRUE)
countFiles
## 共七个样本,可以从文件名看到样本描述
head(read.table(countFiles[1]))

下面的截图是HTseq-count软件的结果,

image-20191106215755455

我们嫌弃HTseq-count软件运行速度太慢,所以才想着featureCounts,所以一切都得使用https://github.com/vivekbhr/Subread_to_DEXSeq 的脚本了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
conda activate rna 
gtf=/home/yb77613/biosoft/Subread_to_DEXSeq/gencode.v32.annotation.gtf
#gtf=/home/yb77613/biosoft/Subread_to_DEXSeq/out_gv32.gtf
featureCounts -f -O  -p -T 4  -F GTF \
-a ok.gtf \
-o test.txt ../star/SRR2016941.bam 
-o npc2_fCount.out.txt ../star/*bam   1>counts.id.log 2>&1 & 

重点是 -O 参数, 统计所有重叠的的meta-features的reads (或-f参数指定的feature)。

写在最后

其实我最后并没有成功,因为作者GitHub提供的这个插件并不好用,所以我决定自己来针对这个工具写脚本,总有一些时候,不得不从头编程而不是依赖于现有工具。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
基于bam文件做可变剪切的软件leafcutter和rMATS的比较
可变剪接(Alternative Splicing,AS)是指从一个mRNA前体中通过不同的剪接方式,对外显子和内含子进行组合,产生不同的mRNA剪接异构体的过程。高等真核生物中的可变剪接极大地拓展了基因功能的多样性,是调节基因表达和产生蛋白质组多样性的重要机制。
生信技能树
2019/11/18
4.9K0
就想把表达矩阵区分成为蛋白编码基因和非编码有这么难吗?
考核题的文章里面是自己测了8个TNBC病人的转录组然后分析,这里借助TCGA数据库,所以可以复现。我这里想展现的主要是TCGA的数据下载和基因的ID转换,分类,的理解。
生信技能树
2019/09/24
4.2K0
就想把表达矩阵区分成为蛋白编码基因和非编码有这么难吗?
RNA-seq(6): reads计数,合并矩阵并进行注释
小结 计数分为三个水平: gene-level, transcript-level, exon-usage-level 标准化方法: FPKM RPKM TMM TPM
Y大宽
2018/09/10
7.1K0
RNA-seq(6): reads计数,合并矩阵并进行注释
RNA-seq入门实战(二):上游数据的比对计数——Hisat2+ featureCounts 与 Salmon
连续两次求贤令:曾经我给你带来了十万用户,但现在祝你倒闭,以及 生信技能树知识整理实习生招募,让我走大运结识了几位优秀小伙伴!大家开始根据我的ngs组学视频进行一系列公共数据集分析实战,其中几个小伙伴让我非常惊喜,不需要怎么沟通和指导,就默默的完成了一个实战!
生信技能树
2022/07/26
5.4K0
RNA-seq入门实战(二):上游数据的比对计数——Hisat2+ featureCounts 与 Salmon
lncRNA实战项目-第四步-得到表达矩阵的流程
这是RNA-Seq 上游分析的大致流程,比对+定量。当然实验目的若只需要定量已知基因,也可以选择free-alignment 的流程工具如kallisto/Salmon/Sailfish,其优点是可用于RNA-seq的基因表达的快速定量,但是对于小RNA和表达量低的基因分析效果并不好(2018年刚发表的一篇文章对free-alignment 的工具进行了质量评估,doi: https://doi.org/10.1101/246967)。基于比对的流程,比对工具也有很多选择,如Hisat,STAR,Topha
生信技能树
2018/03/05
3.6K1
lncRNA实战项目-第四步-得到表达矩阵的流程
使用featureCounts进行定量分析
featuresCounts软件用于统计基因/转录本上mapping的reads数,也就是用于raw count定量。该软件不仅支持基因/转录本的定量,也支持exon, gene bodies, genomic bins, chromsomal locations等区间的定量。
生信修炼手册
2020/05/08
7K0
看优秀本科生如何一周内学会Linux进而搞定RNA-seq上游分析
我是武汉大学基础医学专业第一届的学生,2016年9月刚进大学的时候就选了导师进入实验室接受科研训练。虽然我们实验室不是专门做生物信息学的,但第一次和导师正式交流的时候,她就建议我要学点生信。(巧合的是2016年9月也是生信菜鸟团转型生信技能树的时间点,如果所有的导师都如此明智就好了)
生信技能树
2020/04/14
9.1K1
看优秀本科生如何一周内学会Linux进而搞定RNA-seq上游分析
RNA-seq 差异分析的点点滴滴(2)
本系列[1]将开展全新的转录组分析专栏,主要针对使用DESeq2时可能出现的问题和方法进行展开。
数据科学工厂
2024/12/30
1720
RNA-seq 差异分析的点点滴滴(2)
单细胞转录组数据处理之上游分析流程
实际上你需要理解的就是10x数据和Smart-seq2技术啦,最常用而且最常见!上游分析流程我们分开讲解,在群主的7个小时的单细胞转录组视频课程(限时免费) 视频里面演示的其实是Smart-seq2技术的单细胞转录组数据处理,而且仅仅是半个小时的教学,其实是需要你有非常多的背景知识才可能看得懂。
生信技能树jimmy
2020/03/30
6.4K0
鉴定新的lncRNA之上游流程
比如RNA-seq数据,上游就是fastq的质量控制,比对,定量,最后拿到表达矩阵。而下游就是表达矩阵的一系列统计学分析, 包括PCA,相关性热图,层次聚类图,差异分析,火山图,表达量热图,GO/KEGG数据库功能注释等等。
生信技能树
2020/03/25
2.4K0
使用rmats进行可变剪切的分析
rmats是目前使用的最广泛的可变剪切分析软件,该软件不仅可以识别可变剪切事件,还提供了定量和组间差异分析的功能,功能强大,网站链接如下
生信修炼手册
2020/05/08
2.9K2
使用rmats进行可变剪切的分析
一个RNA-seq数据分析的Snakemake流程
但是如果RNA-seq数据分析项目非常多,或者说每个项目里面的样品非常多, 这个时候我们会推荐流程化管理我们的脚本,我个人的数据分析生涯主要是shell脚本,因为并不是企业级项目管理,能跑十几个项目还是因为要去给粉丝帮忙。对企业生产实践来说,Snakemake流程化管理各个NGS数据分析流程是一个很好的选择,恰好看到了一个最新的 Snakemake workflow, 推荐给大家。
生信技能树
2021/12/17
1.3K0
一个RNA-seq数据分析的Snakemake流程
转录组上游分析流程(四)
环境部署——数据下载——查看数据(非质控)——数据质控——数据过滤(过滤低质量数据)——数据比对及定量
凑齐六个字吧
2024/10/26
3960
转录组上游分析流程(四)
NGS可变剪切之STAR+rmats软件使用
mats软件只要你运行成功, 结果还是喜人的, 不过目前TCGA数据库的可变剪切都是一个java软件,叫做spliceseq。我们下次再分享spliceseq咯,这次先让学徒带领大家摸索一下mats软件哈!
生信技能树
2020/02/20
5.6K1
qualimap+multiqc完美解决多组学比对结果的质控
这个完全是项目实战经验分享咯,有大样本量NGS多组学数据处理经验的朋友应该能很容易理解,动辄几个T的数据,上百个样本很难一个个的检查是否出现问题,需要一个简单方便快捷质控方案。而我认为qualimap+multiqc完美解决多组学比对结果的质控,当然也欢迎大家在我们生信技能树平台推荐自己的实战经验!
生信技能树
2018/07/27
3.5K0
qualimap+multiqc完美解决多组学比对结果的质控
鉴定lncRNA流程全套代码整理
前两期周更我们通过一篇文章的复现整理了mRNA和lncRNA分析基本流程,但并没有涉及新lncRNA的鉴定,本周的推文本质上是我个人学习鉴定lncRNA的全套流程笔记,整合了我们公众号往期的资源,对代码进行了勘误更新,内容非常详实。
生信菜鸟团
2023/08/23
4K1
鉴定lncRNA流程全套代码整理
转录组——上游分析
FastQC主页:http://www.bioinformatics.babraham.ac.uk/projects/fastqc/
青柠味
2025/06/12
2370
转录组——上游分析
转录组分析学习笔记(持续补充)
FASTQ文件中以四行最为一个基本单元,并对应一条序列的测序信息,各行记录信息如下:
全栈程序员站长
2022/09/20
2.7K0
转录组分析学习笔记(持续补充)
都2020年了你还在用tophat吗(RNA-seq数据免费分析)
如果你现在(2020)做人类数据分析,比如lncRNA的鉴定啥的,当然是走hisat2+stringTie流程啦,取代已经十多年了的tophat+Cufflinks流程。但是我这两天假期无聊刷文献,看到发表在Theranostics 2020,的研究文章:Long noncoding RNA PiHL regulates p53 protein stability through GRWD1/RPL11/MDM2 axis in colorectal cancer里面的RNA-seq数据居然还是在走十几年前的tophat流程哦,有趣,而且写的不清不楚那个FPKM是如何计算的。在广州锐博公司?
生信技能树
2020/02/20
1.6K0
STAR直接就可以输出readsCount,为什么还需要featurecounts?
这个问题很让人困惑,不少教程,先是STAR比对,然后featureCounts或HTSeq再计算reads count。那么我们看看,什么时候需要这样做,什么时候不需要这样做?
生信宝典
2022/01/18
1.9K0
推荐阅读
相关推荐
基于bam文件做可变剪切的软件leafcutter和rMATS的比较
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验