繪製迴歸(基數)

繼續 mtcars 示例,這是一個簡單的方法來生成可能適合釋出的線性迴歸圖。

首先擬合線性模型和

fit <- lm(mpg ~ wt, data = mtcars)

然後繪製兩個感興趣的變數並在定義域中新增迴歸線:

plot(mtcars$wt,mtcars$mpg,pch=18, xlab = 'wt',ylab = 'mpg')
lines(c(min(mtcars$wt),max(mtcars$wt)),
as.numeric(predict(fit, data.frame(wt=c(min(mtcars$wt),max(mtcars$wt))))))

差不多了! 最後一步是在圖中新增回歸方程,rsquare 以及相關係數。這是使用 vector 函式完成的:

rp = vector('expression',3)
rp[1] = substitute(expression(italic(y) == MYOTHERVALUE3 + MYOTHERVALUE4 %*% x), 
          list(MYOTHERVALUE3 = format(fit$coefficients[1], digits = 2),
                        MYOTHERVALUE4 = format(fit$coefficients[2], digits = 2)))[2]
rp[2] = substitute(expression(italic(R)^2 == MYVALUE), 
             list(MYVALUE = format(summary(fit)$adj.r.squared,dig=3)))[2]
rp[3] = substitute(expression(Pearson-R == MYOTHERVALUE2), 
             list(MYOTHERVALUE2 = format(cor(mtcars$wt,mtcars$mpg), digits = 2)))[2]

legend("topright", legend = rp, bty = 'n')

請注意,你可以通過調整向量函式來新增任何其他引數,例如 RMSE。想象一下,你想要一個包含 10 個元素的圖例。向量定義如下:

rp = vector('expression',10)

你需要定義 r[1] ….到 r[10]

這是輸出:

StackOverflow 文件