在包AER中的tobit()之后运行predict()

时间:2012-05-27 20:36:34

标签: r predict

我正在对数据集进行一次运行分析,其中因变量(让我们称之为y)的检测结果为0.这就是我所做的:

library(AER) 
fit <- tobit(data=mydata,formula=y ~ a + b + c)

这很好。现在我想运行“预测”功能来获得拟合值。理想情况下,我对未观察到的隐变量“y *”和观察到的删失变量“y”的预测值感兴趣[参见参考文献1]。

我检查了文件中的predict.survreg [参考文献2],我不认为我理解哪个选项给了我预测的删失变量(或潜在变量)。

我在网上找到的大多数例子都提供以下建议:

predict(fit,type="response").

同样,不清楚这些是什么样的预测。

我的猜测是预测函数中的“类型”选项是关键,其中type =“response”表示删失变量预测,type =“linear”表示潜在变量预测。

在这里有经验的人可以为我解释一下吗?

非常感谢!

参考文献:

  1. http://en.wikipedia.org/wiki/Tobit_model

  2. http://astrostatistics.psu.edu/datasets/2006tutorial/html/survival/html/predict.survreg.html

2 个答案:

答案 0 :(得分:4)

通常预测 - “响应”结果已经从回归中使用的任何建模变换反向转换为原始数据规模,而“线性”预测是链接变换规模上的线性预测变量。对于具有身份链接的tobit,它们应该是相同的。

您可以轻松地检查我的元预测。我刚刚使用?tobit页面上的示例进行了检查:

plot(predict(fm.tobit2, type="response"), predict(fm.tobit2,type="linear"))

答案 1 :(得分:3)

我在stats.stackexchange上发布了一个类似的问题,我得到了一个对你有用的答案:

https://stats.stackexchange.com/questions/149091/censored-regression-in-r

该软件包的一位作者展示了如何计算$ Y $的平均值(即预测值),其中$ Y = max(Y ^ *,0)$。使用包string[string] foo; foo["XXX"] = "YYY"; logInfo(*("xxx" in foo)); // BOOM. Exception here ,这必须“手动”完成。