library(MASS)
head(dta <- cats)
##   Sex Bwt Hwt
## 1   F 2.0 7.0
## 2   F 2.0 7.4
## 3   F 2.0 9.5
## 4   F 2.1 7.2
## 5   F 2.1 7.3
## 6   F 2.1 7.6

lm()預設的比對方式是NULL,即dummy coding。截距是Sex = F的平均值。迴歸係數是Sex = M的平均值減去截距所得的數值。

coef(lm(Bwt ~ Sex, data = cats))
## (Intercept)        SexM 
##   2.3595745   0.5404255

lm()中加入參數contrasts = list(Sex = “contr.sum”),會將dummy coding改成effect coding。此時截距為未加權總平均數,而迴歸係數為截距減去操弄組的細格平均數所得的值。

coef(lm(Bwt ~ Sex, data = cats, contrasts = list(Sex = "contr.sum")))
## (Intercept)        Sex1 
##   2.6297872  -0.2702128

END