当响应变量和解释变量都进行日志转换时,如何使用predict()获取y_hat?

时间:2012-02-23 02:32:42

标签: r logging transformation lm predict

我有一个log-log线性函数:

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))

非常感谢提前。

2 个答案:

答案 0 :(得分:0)

当估计诸如公式之类的模型时,它会转换为未转换比例的Y~X1 * X2。如果您希望对结果进行更具体的审核,则需要提供检查数据。

答案 1 :(得分:0)

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