Что означает "/" в R при написании формулы регрессии в lm()

Формула такова. Я не совсем понимаю использование понятия "/". Кажется, что "/" обычно используется в фиктивных переменных. Но я не уверен в его использовании.

lm(y~x/z,data = data.frame(x = rnorm(6), y = rnorm(6), z = rep(0:1,each=3)))

Ответы

Ответ 1

lm(y ~ x/z, data) является просто ярлыком для lm(y ~ x + x:z, data)

Эти два дают одинаковые результаты:

lm(mpg ~ disp/hp,data = mtcars)

Call:
lm(formula = mpg ~ disp/hp, data = df)

Coefficients:
(Intercept)         disp      disp:hp  
  2.932e+01   -3.751e-02   -1.433e-05  


lm(mpg ~ disp + disp:hp, data = mtcars)

Call:
lm(formula = mpg ~ disp + disp:hp, data = mtcars)

Coefficients:
(Intercept)         disp      disp:hp  
  2.932e+01   -3.751e-02   -1.433e-05  

Итак, что вы делаете, это моделирование mpg на mpg основанное на disp и взаимодействии между disp и hp.