生信入门(二)——使用limma、Glimma和edgeR,RNA-seq数据分析

用limma包进行多组差异表达分析 写在前面:最近在使用limma包进行差异表达分析,参考了网上许多教程都觉得说的云里雾里,很不清楚。经过我自己一段时间非常痛苦的钻研,弄明白了,解决了我的实际需求。于是决定将我的分析经验写下来,分享给需要的人。 首先加载前期预处理好的表达矩阵。(我的原始表达矩阵文件已附在文后,大家有需要可以下载实践) setwd("E://Rworkplace") data<-read.table... 阅读详情
AI摘要

本文详细介绍使用edgeR、limma及Glimma包进行RNA-seq数据预处理与分析的过程,涵盖数据下载、整合、预处理、无监督聚类等关键步骤。

生信入门(二)——使用limma、Glimma和edgeR,RNA-seq数据分析

一、简介

简单且高效地分析RNA 测序数据的能力是生信的核心优势之一。通常在获得RNA-seq基因表达矩阵后,通常需要对数据进行数据预处理、探索性数据分析、差异表达检验以及通路分析,以得到可以帮助进一步试验和验证研究的结果。未来几篇将介绍使用edgeR包,limma包,Glimma包对RNA-seq数据展开分析,从原始计数(counts)中挖掘生物学意义

二、数据背景

在本篇文章中,描述了一个用于分析RNA-seq数据的edgeR - limma工作流程,使用基因水平的计数(gene-level counts)作为输入,经过预处理和探索性数据分析,然后得到差异表达(DE)基因和基因表达特征(gene signatures)的列表。Glimma包(Su et al. 2017)提供的交互式图表可以同时呈现整体样本层面与单个基因层面的数据,相对静态的R图表而言,更便于我们探索更多的细节。
此工作流程中我们分析的数据来自Sheridan等人的实验(2015)(Sheridan et al. 2015),它包含三个细胞群,即基底(basal)、管腔祖细胞(liminal progenitor, LP)和成熟管腔(mature luminal, ML)。细胞群皆分选自雌性处女小鼠的乳腺,每种都设三个生物学重复。RNA样品分三个批次使用Illumina HiSeq 2000进行测序,得到长为100碱基对的单端序列片段。

三、初始配置

library(limma)
library(Glimma)
library(edgeR)
library(Mus.musculus)

四、数据整合

1、数据下载

数据来源:https://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE63310&format=file 下载GSE63310_RAW.tar放在一定的文件夹

2、解压文件
setwd("D:\\RData\\prac002")#设置当前路径,下载数据在该文件夹下
utils::untar("GSE63310_RAW.tar", exdir = ".")
files<-c("GSM1545535_10_6_5_11.txt", "GSM1545536_9_6_5_11.txt", "GSM1545538_purep53.txt",
         "GSM1545539_JMS8-2.txt", "GSM1545540_JMS8-3.txt", "GSM1545541_JMS8-4.txt",
         "GSM1545542_JMS8-5.txt", "GSM1545544_JMS9-P7c.txt", "GSM1545545_JMS9-P8c.txt")
for(i in paste(files,".gz",sep=""))
  R.utils::gunzip(i,overwrite=TURE)

每一个文本文件均为对应样品的原始基因水平计数矩阵。需要注意我们的这次分析仅包含了此实验中的basal、LP和ML样品(可见下方所示文件名)。

files<-c("GSM1545535_10_6_5_11.txt", "GSM1545536_9_6_5_11.txt", 
         "GSM1545538_purep53.txt", "GSM1545539_JMS8-2.txt", 
         "GSM1545540_JMS8-3.txt", "GSM1545541_JMS8-4.txt", 
         "GSM1545542_JMS8-5.txt", "GSM1545544_JMS9-P7c.txt", 
         "GSM1545545_JMS9-P8c.txt")
read.delim(files[1],nrow=5)#查看导入数据

运行结果
在这里插入图片描述
相比于分别读入这九个文本文件然后合并为一个计数矩阵,edgeR提供了更方便的途径,使用readDGE函数即可一步完成。得到的DGEList对象中包含一个计数矩阵,它的27179行分别对应每个基因不重复的Entrez基因ID,九列分别对应此实验中的每个样品。

class(x)
dim(x)

运行结果
在这里插入图片描述
注:如果数据不是每个样本一个文件的形式,而是包含所有样本的技术的文件,则可以先将文件读入R,再使用DGEList函数转换为一个DGEList对象

3、组织样本信息

为进行下游分析,需要将有关实验设计的样品信息与计数矩阵的列关联起来。这里需要包括各种对表达水平有影响的实验变量,无论是生物变量还是技术变量。例如,细胞类型(在这个实验中是basal、LP和ML)、基因型(野生型、敲除)、表型(疾病状态、性别、年龄)、样品处理(用药、对照)和批次信息(如果样品是在不同时间点进行收集和分析的,需要记录进行实验的时间)等。
我们的DGEList对象中包含的samples数据框同时存储了细胞类型(group)和批次(测序泳道lane)信息,每种信息都包含三个不同的水平。在x$samples中,程序会自动计算每个样品的文库大小(即样品的总序列计数),归一化系数会被预先设置为1。 为了方便阅读,我们从DGEList对象x的列名中删去了GEO样品ID(GSM*)。

samplenames<-substring(colnames(x),12,nchar(colnames(x)))
colnames(x)<-samplenames
group<-as.factor(c("LP", "ML", "Basal", "Basal", 
TCGA数据库学习二:差异基因分析 在分析TCGA阿虎句酷里的RNA-seq数据之前,先了解TCGA样本的id名称。TCGA样本id中第14-15位代表分组信息,01-09是tumor(肿瘤),10-29是normal。 阅读详情

相关推荐

edgeR:差异表达分析

edgeR的适用性 适用于RNA-Seq,SAGE-Seq,Chip-Seq,CRISPR-Cas9,DNA methylation研究。 快速入门 glm approach 相比经典方法更灵活。旗下包含quasi-likelihood F-test method 和 likelihood ratio。 quasi-likelihood: 建议用于大量RNA-seq数据的差异表达分析。 like...

weixin_44649331的博客 1万+

生信入门(三)——使用limma、Glimma和edgeR,RNA-seq数据分析

使用limma、Glimma和edgeR,RNA-seq数据分析 文章目录使用limma、Glimma和edgeR,RNA-seq数据分析六、差异表达分析1、创建设计矩阵和对比2、从表达计数数据中删除异方差3、拟合线性模型以进行比较4、检查DE基因数量5、检查单个DE基因6、差异表达结果可视化7、使用camera的基因检验 本篇继续上一篇数据预处理之后做差异表达分析。 六、差异表达分析 1、创建设计矩阵和对比 在此研究中,我们想知道哪些基因在我们研究的三组细胞之间以不同水平表达。我们的分析中所用到的线性模型

羊羊的博客 6047

RNA-seq差异表达分析实战:limma+Glimma+edgeR三件套保姆级教程

本文提供了一份详细的RNA-seq差异表达分析实战教程,重点介绍了如何整合使用limma、Glimma和edgeR这三个核心R包。教程涵盖从数据准备、设计矩阵构建、voom变换、经验贝叶斯建模,到结果提取、可视化及基因集富集分析的全流程,旨在帮助生物信息学初学者掌握这套高效、可靠的分析工作流。

weixin_29273849的博客 553

利用 edgeR 分析 RNAseq 数据

设置工作目录,xxx 为表达矩阵数据目录。1.1读取featureCounts表达矩阵。

weixin_43927366的博客 1476

生物信息学进阶:如何用limma+edgeR+Glimma玩转RNA-seq数据(附完整代码与数据集)

本文深入探讨了如何整合limma、edgeR和Glimma三大R包,构建强大的RNA-seq数据分析流程。该组合通过limma-voom转换处理计数数据,利用edgeR进行预处理和标准化,并借助Glimma生成交互式可视化报告,能有效应对复杂实验设计,实现从差异表达分析到生物学洞察的深度挖掘。

weixin_29313423的博客 561

RNA-seq差异表达分析实战:limma+Glimma+edgeR保姆级教程(含可视化避坑指南)

本文提供了一份RNA-seq差异表达分析的实战教程,详细介绍了如何使用limma、edgeR和Glimma工具组合进行从数据预处理、模型拟合到结果可视化的完整流程。内容涵盖数据过滤、归一化、设计矩阵构建、统计检验以及交互式图表生成,并针对常见分析陷阱提供了解决方案,旨在帮助生物信息学初学者快速上手并完成可靠的差异基因分析。

weixin_29291185的博客 303

【PaperReading】使用limma、Glimma和edgeR对RNA-seq数据分析

使用limma、Glimma和edgeR对RNA-seq数据分析1. 摘要 Xueyi Dong^1, Charity Law^2, Monther Alhamdoosh3, Shian Su1, Luyi Tian2, Gordon K. Smyth4 and Matthew E. Ritchie5 1The Walter and Eliza Hall Institute of Medical Research, 1G Royal Parade, Parkville, VIC 3052, Melbour

小哲的博客 1018

用limma对基因进行差异分析

用limma对基因进行差异分析全代码,包括自动判断是否需要进行log,对0和负值的处理等。

Docker部署FRP实现内网穿透

FRP是一款开源内网穿透工具,通过在公网服务器部署服务端(FRPS),内网设备运行客户端(FRPC)实现外部访问。支持TCP、UDP、HTTP等多种协议。部署时需配置服务端(如群晖NAS使用Docker)和客户端(如Windows下载可执行文件)。服务端需设置监听端口、控制面板及Token认证,客户端需指定服务器地址和相同Token。完成配置后可通过公网IP或域名访问内网资源,并在控制面板监控连接状态。

波哥技术栈 1598

STM32H743的ADC还能这么玩?定时器触发+DMA搬运,构建低CPU占用的数据流

本文深入探讨了STM32H743微控制器中ADC的高效使用方法,通过定时器触发和DMA搬运技术实现低CPU占用的数据流采集。详细解析了硬件架构、CubeMX配置步骤及高级优化技巧,包括双缓冲技术和多ADC同步采样,适用于电机控制、音频采集等高性能应用场景。

weixin_30698527的博客 646

halcon C++编程 第4讲 HObject/HImage Mat相互转换(tcy)

网上有很多相互转换程序,但并不知那个正确,本文对相互转换后的结果和原对象比较是否相同判断转换是否正确。经测试ok.本文包括转换代码及测试是否相同。 1.转换程序: /************************************ HObject转为Mat:time:2021/3/16 V1.0 *************************************/ cv::Mat HalconClass::HObjectToMat(const HalconCpp::HObject&..

tcy-阿春 4926

ESP32-S3开发环境避坑指南:VS Code+ESP-IDF离线安装全流程(附国内镜像加速)

本文提供了一份详细的ESP32-S3开发环境离线安装指南,重点解决网络依赖问题。通过整合国内镜像加速,手把手教你完成VS Code、ESP-IDF框架、工具链及Python依赖的本地化部署,实现稳定、可重复的开发环境搭建,大幅提升IoT开发效率。

peach的博客 960

MTK pwm beeper配置记录

如果正常,系统启动后会在/dev/input下生成 一个event节点,使用方法参考标准linux使用。dts相关修改如下,全都在里面,注意一下位置。对应的配置文件中增加如下定义。

hclydao的专栏 726

【FISCO-BCOS】 八、ubuntu配置Java环境

ubuntu配置Java环境需根据自己的java版本号进行细节修改,本文以jdk11.0.18版本为例。ps:通过此法还可以查看java安装路径,但必须是环境配置成功的情况下才能使用。二、添加Java环境路径。四、检查java环境设置。

naihe_fish的博客 4306

时间序列预测 | Python实现LSTM时间序列数据预测

目录LSTM神经网络LSTM原理LSTM数据下载LSTM程序设计导入Python包时序数据处理LSTM模块定义模型训练模型评估参数设定运行结果参考资料致谢 LSTM神经网络 长短期记忆网络——通常简称为“LSTM”——是一种特殊的 RNN,能够学习长期依赖关系。它们由Hochreiter & Schmidhuber (1997)引入,并在后续工作中被许多人提炼和推广。1它们在处理各种各样的问题时效果非常好,现在被广泛使用。LSTM 被明确设计为避免长期依赖问题。长时间记住信息实际上是他们的默认行为

前程算法屋的博客 3910

Ubuntu零基础入门到精通【1.1讲】:什么是 Ubuntu?一文带你彻底搞懂!

🏆 本文收录于 《滚雪球学 Ubuntu》 专栏。 本专栏面向有一定计算机基础,但尚未系统学习 Linux / Ubuntu 的读者,采用“滚雪球式学习法”:先装好、再会用、再理解、再优化、再实战,带你从第一次进入 Ubuntu 桌面 / 终端开始,逐步掌握 Ubuntu 的日常使用、命令操作、软件安装、系统配置、开发环境搭建与服务器部署能力。

**My Coding Family** 5662

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

上一篇: 机器学习深入篇(二)——多项式回归源码实现
下一篇: 生信入门(三)——使用limma、Glimma和edgeR,RNA-seq数据分析
柚子味的羊
博客等级 码龄8年 2344粉丝 207原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柚子味的羊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值