Использование ~. (Tilde) в R
example ~ .
как можно после точки указать, какие переменные следует убрать, имеется ввиду, существует ли запись вида example ~ .-var1 -var2? или в любом случае придется выбирать эти переменные select'ом?
Ответы (1 шт):
судя по описанию функции formula():
The
-operator removes the specified terms, so that(a+b+c)^2 - a:bis identical toa + b + c + b:c + a:c.
запись формулы вида example ~ .-var1 -var2 вполне допустима и означает именно то, что вам требуется — исключение указанных переменных.
проверим. вот все переменные участвуют:
lm(mpg~.,mtcars) %>% coefficients %>% names
#> [1] "(Intercept)" "cyl" "disp" "hp" "drat"
#> [6] "wt" "qsec" "vs" "am" "gear"
#> [11] "carb"
а теперь попробуем исключить парочку:
lm(mpg~.-cyl-disp,mtcars) %>% coefficients %>% names
#> [1] "(Intercept)" "hp" "drat" "wt" "qsec"
#> [6] "vs" "am" "gear" "carb"
действительно, эти переменные не участвовали в построении модели.
Created on 2021-04-06 by the reprex package (v0.2.1)