将0/1的列包含到线性固定模型中的截距中

时间:2018-11-07 17:02:49

标签: r matrix linear-regression

让我们假设我有一个像这样的数据框:

|--------------|-----------|-----------|-------|-----|-----------|
|coffeeshop_id | americano | capuccino | latte | tea | mean_price|
|--------------|-----------|-----------|-------|-----|-----------|
|15476         |1          | 0         | 0     | 1   | 2.35      |
|--------------|-----------|-----------|-------|-----|-----------|
|13466         |0          | 1         | 0     | 1   | 2.45      |
|--------------|-----------|-----------|-------|-----|-----------|

我想建立线性回归,并在截距中将Americano作为参考。 我该怎么办?

1 个答案:

答案 0 :(得分:0)

您可以使用relevel设置新的参考水平以拟合模型。

# create some data
set.seed(1)
x <- factor(sample(letters[1:3], size=20, replace=T))
y <- rnorm(20)
my.df <- data.frame(x=x, y=y)

# model fitted with "a" as the reference level
summary(lm(y~x, data=my.df))

# set "b" as the reference level
my.df$x <- relevel(my.df$x, ref='b')
summary(lm(y~x, data=my.df))