【发布时间】:2019-06-12 21:10:06
【问题描述】:
我正在尝试在 R 中运行一个未指定截距的线性模型。原因是最终计算添加截距时减少的平方和。但是,当使用内置因子对比指定此模型与明确说明对比值(即 -.5 和 .5)时,我会收到不同的结果。
更具体地说,使用 contrasts() 会产生一个具有 2 个项(无截距)的模型,而通过列向量明确说明对比度值会产生正确的模型(无截距和 1 个指定对比度的项)。
group <- rep(c("c", "t"), each = 5)
group_cont <- rep(c(-.5, .5), each = 5)
var1 <- runif(10)
var2 <- runif(10)
test_data <- data.frame(
group = factor(group),
group_cont = group_cont,
y = var1,
x = var2
)
contrasts(test_data$group) <- cbind(grp = c(-.5, .5))
summary(lm(y ~ 1 + group, data = test_data)) # full model
summary(lm(y ~ 0 + group, data = test_data)) # weird results
summary(lm(y ~ 0 + group_cont, data = test_data)) # expected
有没有办法指定没有截距的线性模型,但仍然使用contrasts() 指定对比度?
【问题讨论】:
标签: r linear-regression