通过查看它在R中描述不同数据集的程度来评估glm

时间:2014-05-04 14:11:45

标签: r glm

我使用带有~10个预测变量和二元响应变量的glm创建了一个逻辑模型。该模型是使用我的完整数据集(~8000观测)的一个子集创建的,通过随机选择3000个观测值,将它们放入一个新的数据集(newdata)并将glm拟合到newdata。

为了评估模型,我想看看模型在不同数据集(testdata)中描述数据的程度,该数据集随机选择例如:来自完整数据集的约1000个观测值。我将如何在R中进行此操作?

我已经为系数创建了两个置信区间,并查看了Wald-statistics和LRT来评估我的模型的统计显着性,但是希望能够看到它如何描述随机选择的完整数据集。

非常感谢!

1 个答案:

答案 0 :(得分:1)

有几种可能的方法。首先,要从样本中评估模型,您必须选择性能指标。说它是MSE,并假设您的测试集称为测试,那么您将使用:

mean((test$response - predict(m, newdata = test, type = "response"))^2)

对于逻辑回归,您可以计算物流族的偏差,而不是使用MSE。或者您可以使用ROCR包中提供的曲线/ Gini下的区域。此外,您可能希望进行交叉验证,而不是只进行一次样本测试,这可以通过cvTools::cvFit完成。