【发布时间】:2018-10-06 15:02:50
【问题描述】:
我正在使用以下函数(找到 here)来生成线性模型方程。
df <- data.frame(x = c(1:100))
df$y <- 2 + 3 * df$x + rnorm(100, sd = 40)
lm_eqn <- function(df){
m <- lm(y ~ x, df);
eq <- substitute(italic(y) == a + b %.% italic(x)*","~~italic(r)^2~"="~r2,
list(a = format(coef(m)[1], digits = 2),
b = format(coef(m)[2], digits = 2),
r2 = format(summary(m)$r.squared, digits = 3)))
as.character(as.expression(eq));
}
lm_eqn(df)
[1] "italic(y) == \"14\" + \"3\" %.% italic(x) * \",\" ~ ~italic(r)^2 ~ \"=\" ~ \"0.806\""
但是,此函数是为在ggplot2 中使用而构建的,这意味着它包含ggplot2 识别和作用的特定expression 符号。我正在将此功能用于其他用途。如何更改代码以使我最终得到"y = 14 + 3x, r2=0.806"?谢谢。
【问题讨论】:
-
为什么投反对票?