1
선형 회귀 모델에 적합하도록 실험적인 디자인을 사용하고 있습니다.model.matrix의 일부 요소에 대비 설정
design.df <- data.frame(batch=rep(c(1:3,1:3),4),
species=rep(c(rep("mouse",3),rep("rat",3)),4),
sex=rep(c(rep("M",12),rep("F",12))),
stringsAsFactors = F)
design.df$species
및 design.df$sex
모두 factors
있다 :
design.df$species <- factor(design.df$species,levels=c("mouse","rat"))
design.df$sex <- factor(design.df$sex,levels=c("F","M"))
design.df$species
의 콘트라스트 인코딩 contr.sum
되어야 design.df$sex
그 반면 contr.treatment
이어야
여기서 설계 data.frame
이다.
model.matrix
로에게 그것을 설정하려면 :
은 분명히
contrasts.list <- list(batch=NA,species="contr.treatment",sex="contr.sum")
design.mat <- model.matrix(as.formula(paste0("~",paste(model.factors,collapse="+"))),contrasts=contrasts.list,data=design.df)
는 오류에 따라 작동하지 않습니다 내가 얻을 :
는Error in `contrasts<-`(`*tmp*`, value = contrasts.arg[[nn]]) :
contrasts apply only to factors
그래서 제 질문은 어떻게 나는 model.matrix
을 design.df
에 따라 contrasts.list
에 따라 지정합니까?