如何在 R 中用回归模型线在散点图上显示 R 平方值?
r programmingserver side programmingprogramming更新于 2025/4/13 16:22:17
R 平方值是判定系数,它给出了独立变量解释的因变量变化的百分比或比例。要在不使用任何软件包的情况下用回归模型线在散点图上显示此值,我们可以使用带有 abline 和 legend 函数的 plot 函数。
考虑下面的数据框 −
示例
set.seed(1234) x<-rnorm(20,1,0.096) y<-rnorm(20,2,0.06) df<-data.frame(x,y) df
输出
x y 1 0.8841217 2.008045 2 1.0266332 1.970559 3 1.1041064 1.973567 4 0.7748130 2.027575 5 1.0411960 1.958377 6 1.0485814 1.913108 7 0.9448250 2.034485 8 0.9475233 1.938581 9 0.9458126 1.999092 10 0.9145564 1.943843 11 0.9541895 2.066138 12 0.9041549 1.971464 13 0.9254796 1.957434 14 1.0061880 1.969925 15 1.0921114 1.902254 16 0.9894126 1.929943 17 0.9509431 1.869198 18 0.9125252 1.919540 19 0.9196315 1.982342 20 1.2319202 1.972046
创建回归模型以根据 x − 预测 y
Model<-lm(y~x,data=df) summary(Model)
调用 −
lm(formula = y ~ x, data = df) Residuals: Min 1Q Median 3Q Max -0.09955 -0.03138 0.00522 0.02981 0.09783
系数 −
Estimate Std. Error t value Pr(>|t|) (Intercept) 2.0971 0.1084 19.349 1.7e-13 *** x -0.1350 0.1105 -1.221 0.238 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.04689 on 18 degrees of freedom Multiple R-squared: 0.07649, Adjusted R-squared: 0.02519 F-statistic: 1.491 on 1 and 18 DF, p-value: 0.2378
创建带有 R 平方值的散点图 −
plot(x,y) abline(Model) legend("topleft",legend=paste("R2 is", format(summary(Model)$r.squared,digits=3)))