我有以下x
和y
值集:
x = c(1:150)
y = x^-.5 * 155 + (runif(length(x), min=-3, max=3))
对数据进行线性回归:
plot(x, y, log="xy", cex=.5)
model = lm(log(y) ~ log(x))
model
现在我想对回归的质量进行衡量,并告诉人们通常使用R ^ 2('确定系数'),它应该接近1。
如何轻松计算R中的值?我已经看到残差等已经计算好了。
答案 0 :(得分:3)
使用summary(model)
将详细输出打印到de控制台。您还可以使用str
来探索对象的结构,例如str(summary(model))
当您可以使用$
提取部分输出时,这非常有用。
result <- summary(model) # summary of the model
str(result) # see structure of the summary
result$r.squared # extract R squared (coefficient of determination)
result
包含R.squared和Adjusted R平方,例如参见以下输出
Residual standard error: 0.09178 on 148 degrees of freedom
Multiple R-squared: 0.9643, Adjusted R-squared: 0.964
F-statistic: 3992 on 1 and 148 DF, p-value: < 2.2e-16
该输出只是控制台中打印的summary(model)
的最后一部分