结果应该在et这个变量里面,至于谁是对照不重要,最后看看结果表达量就知道了;
R语言基础不好可以学习:R语言画图、R语言快速入门与提高
如何设置分组,知道那个是对照,那个是control,免得做反了。。。
library(edgeR)
counts <- read.table(
"data_test.txt",
header=T,
sep="\t",
row.names=1,
comment.char="",
check.names=F)
head(counts)
# 设置样本分组
groups <- factor(c("Un_Responder", "Responder", "Un_Responder", "Responder", "Un_Responder", "Un_Responder", "Responder"))
# 构建edgeR中的对象
y <- DGEList(counts=counts,group=groups)
#根据CPM表达量对基因进行过滤
#keep <- rowSums(cpm(y)>1) >= 2
##CPM 为 1 代表在最小的样本中,count 为 6——7
####每组至少有两个样本,所以要求至少在 2 个库中表达(>=2)
#y <- y[keep, , keep.lib.sizes=FALSE]
##归一化TMM
y <- calcNormFactors(y,method = 'TMM')
#差异分析
#design <- model.matrix(~groups)
###计算离散度,估计离散值(Dispersion)
##估算方法1
#y <- estimateDisp(y,design)
####一次性计算common dispersion和tagwise disperson
##估算方法2,
y <- estimateCommonDisp(y)
###务必先计算common dispersed
y <- estimateTagwiseDisp(y)
###再计算
tagwise disperson
et <- exactTest(y,pair = c("Un_Responder","Responder"))
#### Responder Vs Un_Responder.精确检测是基于 qCML 方法的,仅适用于单因素实验。
topTags(et)
结果应该在et这个变量里面,至于谁是对照不重要,最后看看结果表达量就知道了;
R语言基础不好可以学习:R语言画图、R语言快速入门与提高
如果觉得我的回答对您有用,请随意打赏。你的支持将鼓励我继续创作!
