用edgeR做有重复的差异表达分析时出现如下报错:Error in estimateDisp.default(y = y$counts, design = design, group = group, : object 'prior.n' not found
求解
所用脚本如下:
rawdata<-read.csv("deseq2.csv",fill=TRUE,header = T)
rownames(rawdata)<-rawdata$gene_id
rawdata<-rawdata[,-1]
head(rawdata)
condition <- factor(c(rep("BWRF",3),rep("HRF",3),rep("JF",3),rep("RF",3),rep("WRF",3)),levels=c("BWRF","HRF","JF","RF","WRF"))
condition
#构建DGEList矩阵
colData <- data.frame(row.names=colnames(rawdata),condition)
colData
y <- DGEList(counts = rawdata, group =colData$condition)
y
#过滤low counts数据
keep <- rowSums(cpm(y)>1)>=24
y <- y[keep,keep.lib.sizes=FALSE]
#标准化(以TMM)
y <- calcNormFactors(y,method = "TMM")
#差异表达分析
design <- model.matrix(~0+ condition,data =colData)
colnames(design) <- levels(colData$condition)
head(design)
design
y<- estimateDisp(y,design)
求解决方法,请各位指教!