写这篇文章一部分原因是填2年前的一个坑 转录组入门(7):差异表达分析. 另一部分原因是GQ最近又在搞一波无重复的差异表达分析, 所以专门去学了edgeR
我个人是不太推荐没有重复的差异表达分析,毕竟统计学上的p值是为了证明两个样本的差异是真实存在而不是抽样误差导致, 但是你单个样本如何计算变异呢?
因此每当别人提问的时候, 我个人的建议就是定性看看倍数变化吧. 但是如果真的强行要算p值, 其实也不是不行, edgeR就是一种选择.
环境准备
我们需要安装两个R包,一个是edgeR, 一个是airway. 其中airway是一个数据集包, 功能就是提供一个用于分析的数据
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
if (!requireNamespace("edgeR", quietly = TRUE))
BiocManager::install("edgeR")
if (!requireNamespace("airway", quietly = TRUE))
BiocManager::install("airway")
加载R包
library(edgeR)
library(airway)
构建DGEList
DGEList是edgeR分析流程中必须的对象. 构建该对象需要提供两类信息: 表达量矩阵和分组信息.
为了方便大家重复,我们这里的数据来自于airway. 对于你自己的数据, 可以用read.table等函数进行导入.
data("airway")
expr_matr