R / lm: Именованные переменные вместо формул? - PullRequest
1 голос
/ 27 января 2020

Можно ли передать элементы очень базовой c линейной модели в функцию lm() как переменные вместо формулы? Т.е. вместо

lin_mod <- lm(Sepal.Length ~ Sepal.Width, data = iris) 

что-то вроде этого:

lin_mod <- lm(x = Sepal.Width, y = Sepal.Length, data = iris)

Справочная информация: я знаю, что могу передавать переменные в формулы через paste(), но это становится сложно при работе с несколькими переменными передачи внутри функций. В конце я бы хотел использовать хэндовер переменной фигурной скобки в lm()

1 Ответ

1 голос
/ 27 января 2020

Мы можем использовать reformulate и использовать его внутри lm

lm(reformulate('Sepal.Width', response = 'Sepal.Length'), data = iris)
#Call:
#lm(formula = reformulate("Sepal.Width", response = "Sepal.Length"), 
    data = iris)

#Coefficients:
#(Intercept)  Sepal.Width  
#     6.5262      -0.2234  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...