通过比较数据获得最小二乘和残差

时间:2014-07-21 22:02:25

标签: r statistics least-squares

我生成了一组模拟数据(df1)。我有第二组数据(df2),我想比较一下,看看df1是否可以解释df2的观察结果。

理想情况下,我想绘制残差并计算最小二乘,但我不确定在将一组数据与另一组数据进行比较时如何做到这一点。

df1
      time n
 0.0000000 1
 0.1268725 2
 1.3128176 3
 3.1765056 4
 3.4091914 5
 4.1245285 6
 8.4518769 9
 9.8119399 10

df2
  n  time
  0  0
 37  1
 97  2
157  3

1 个答案:

答案 0 :(得分:0)

所以你似乎在问:使用训练集(df1)生成的拟合是否在测试集(df2)上表现良好。这是达到此目的的一种方法:

fit <- lm(n ~ time, df)
par(mfrow=c(1,2))
with(df,plot(time,n))
with(df,lines(time,predict(fit),col="blue",lty=2))
plot(fit,1)

df2$pred <- predict(fit,df2)
df2$resid <- with(df2,n-pred)
with(df2,plot(time,n))
with(df2,lines(time,pred,col="blue",lty=2))
with(df2,plot(n,resid,type="b"))

所以答案是“不”,拟合并不能很好地解释df2中的数据。由模型预测的n值远低于n的“实际”值。