使用predict.nls查看我的模型对数据的拟合程度

时间:2018-11-22 01:15:07

标签: r statistics predict nls

因此,我最初使用不同的点创建数据图以显示不同的因子组合。

plot(m, y, xlab='Body mass (kg)', ylab='Maximum oxygen uptake (litres/min)', 
ylim=c(0.24,6.6), type='n')
points(m[s==0 & v==0], y[s==0 & v==0], pch=16, cex=0.6)
points(m[s==0 & v>0], y[s==0 & v>0], pch=1, cex=0.6)
points(m[s==1 & v==0], y[s==1 & v==0], pch=17, cex=0.6)
points(m[s==1 & v>0], y[s==1 & v>0], pch=2, cex=0.6)

然后我使用nls对数据拟合了非线性模型。

fitness0.st <- list(a0=2/3, a1=0, a2=0, a3=0, b0=coefs[1], b1=coefs[2], 
b2=coefs[3], b3=coefs[4], g0=coefs[5], g1=coefs[6], g2=coefs[7], 
g3=coefs[8])
fitness0.nls <- nls(y ~ m^(a0+a1*s+a2*v+a3*sv)*(b0+b1*s+b2*v+b3*sv+ 
(g0+g1*s+g2*v+g3*sv)*a), start = fitness0.st) 

现在,我想考虑模型对数据的拟合程度。我已经使用

为我的模型生成了残差图
plot(m,residuals(fitness0.nls), xlab='Body mass (kg)', ylab='Residuals', 
xlim=c(30,130))
plot(fitted(fitness0.nls), residuals(fitness0.nls), xlab='Fitted values', 
ylab='Residuals', pch=20)
qqnorm(residuals(fitness0.nls), pch=20, main='Normal QQ-plot')
qqline(residuals(fitness0.nls))

但是我也想创建一个罐来使用预测来显示模型的拟合度,但是我不确定如何做到这一点。有人可以帮忙吗?

0 个答案:

没有答案