Отображение строки в формуле, а не переменной в lm fit

Я не могу решить проблему, что при выполнении lm(sformula) она не отображает строку, назначенную sformula . У меня есть ощущение, что это общий способ R обрабатывает аргумент функции и не зависит от линейной регрессии.

Ниже приведен пример проблемы на примерах. Пример 1 имеет нежелательный выход lm(formula = sformula) . Пример 2 – это результат, который я хотел бы сделать, например, lm(formula = "y~x") .

 x <- 1:10 y <- x * runif(10) sformula <- "y~x" ## Example: 1 lm(sformula) ## Call: ## lm(formula = sformula) ## Example: 2 lm("y~x") ## Call: ## lm(formula = "y~x") 

Как насчет eval(call("lm", sformula)) ?

 lm(sformula) #Call: #lm(formula = sformula) eval(call("lm", sformula)) #Call: #lm(formula = "y~x") 

Вообще говоря, есть аргумент data для lm . Давай сделаем:

 mydata <- data.frame(y = y, x = x) eval(call("lm", sformula, quote(mydata))) #Call: #lm(formula = "y~x", data = mydata) 

Вышеуказанная комбинация call() + eval() может быть заменена do.call() :

 do.call("lm", list(formula = sformula)) #Call: #lm(formula = "y~x") do.call("lm", list(formula = sformula, data = quote(mydata))) #Call: #lm(formula = "y~x", data = mydata) 
  • Можете ли вы указать разные геометрии для разных граней в ggplot?
  • Как просмотреть данные из файла .RData?
  • Отображение знака больше или равно
  • Поместите одну числовую переменную в n числовых переменных в n графиках
  • Разделить строку строки фрейма данных на несколько столбцов
  • Разрыв строки в выражении ()?
  • ggplot2 и сводная диаграмма с отрицательными значениями
  • Функция R не возвращает значения
  • Согласование нескольких шаблонов
  • R return corrplot как объект
  • Пользователи Expert R, что в вашем .Rprofile?
  • Давайте будем гением компьютера.