Так что с помощью моего ТОГО, мы смогли сделать построить эту функцию:функции здания, чтобы дать уравнение линейной регрессии
lm_eqn <- function(model){mod_frame <- broom::tidy(model)
eqn_string <- sprintf("The response is equal to %.2f ", mod_frame$estimate[1])
model_terms <- function(i){
if(i == 1){return(",")}
paste(sprintf("+ %.2f %s", mod_frame$estimate[i], mod_frame$term[i]), model_terms(i-1))
}
r2 <- format(summary(model)$r.squared, digits = 3)
print(paste(eqn_string, model_terms(nrow(mod_frame)), "R2 =", r2))
}
Проблема заключается в том, что он плюет от уравнения регрессии в обратном порядке предсказателя переменные категории и в обратном порядке, как они были перечислены в любой модели.
Например:
lmod <- lm(mpg ~ cyl + hp + disp, data = mtcars)
lm_eqn(lmod)
The response is equal to 34.18 + -0.02 disp + -0.01 hp + -1.23 cyl , R2 = 0.768"
Кроме того, есть ли способ, чтобы добавить верхний индекс для $ R^2 $?
Это похоже на вопрос программирования R, который должен переходить на переполнение стека? –