4

我有一个对数对数线性函数:

lom1 = lm(log(y)~log(x1)+log(x2),data=mod_dt)

我想使用相同的数据集获得 y_hat,我做到了

yhat = exp(predict(lom1))

结果似乎很多(与我在 R 中手动计算的 y-hat 进行比较)。

任何原因?

第二个相关问题是,我首先在原始数据集 mod_dt 中添加了三列,用于 y、x1 和 x2 的对数转换。比如说,它们被命名为 logy、logx1 和 logx2,然后我运行 lm:

lom2 = lm(logy ~ logx1 + logx2, data=mod_dt)

这给出了一组不同的系数。

这可以通过这样做给出正确的 y-hat

exp(predict(lom2))

提前谢谢了。

4

2 回答 2

0

这不是一个确切的答案。只是想分享一些我的看法。线性回归模型假设 E(y) = x * beta。如果 y 由 log 转换,则变为 E(log(y)) = x * beta。然而,当我们尝试预测 y 时,通常我们没有 exp(E(log(y))) = E(y)

于 2012-02-23T06:37:33.357 回答
0

当估计诸如您的公式之类的模型时,它会在未转换的尺度上转换为 Y ~ X1 * X2。如果您想对您的结果进行更具体的审查,您将需要提供数据以供检查。

于 2012-02-23T03:04:33.253 回答