Тильда (~) оператор в R
Согласно документации R: оператор ~ используется в формуле для разделения правой и левой частей формулы. Правая часть является независимой переменной, а левая часть - зависимой переменной. Я понимаю, когда ~ используется в пакете lm(). Однако что означает следующее?
x~ 1
Правая сторона 1. Что это значит? Это может быть любой другой номер вместо 1?
1 ответ
От ?lm
:
[..] при подгонке линейной модели y ~ x - 1 указывает линию через начало координат [..]
"-"
в формуле удаляет указанный термин.
Так y ~ 1
это просто модель с константой (перехват) и без регрессора.
lm(mtcars$mpg ~ 1)
#Call:
#lm(formula = mtcars$mpg ~ 1)
#
#Coefficients:
#(Intercept)
# 20.09
Это может быть любой другой номер вместо 1?
Нет, просто попробуй и посмотри.
lm(mtcars$mpg ~ 0)
говорит R удалить константу (равную y ~ -1
), а также lm(mtcars$mpg ~ 2)
выдает ошибку (правильно).
Вы должны прочитать y ~ 1
как y ~ constant
внутри формулы это не простое число.