我需要绘制一个分箱残差图,其中包含来自有序多项式 logit 回归的拟合残差值。
使用polr时如何提取残差?有没有其他函数可以运行 ord multinomal logit 其中可以提取残差?
这是我使用的代码
options(contrasts = c("contr.treatment", "contr.poly"))
mod1 <- polr(as.ordered(y) ~ x1 + x2 + x3, data, method='logistic')
fit <- mod1$fitted.values
res <- residuals(mod1)
binnedplot(fit, res)
问题是对象“res”是“null”。
谢谢
最佳答案
首先,您能告诉我们如何为具有分类响应的模型定义原则上的残差 吗? fitted.values
是概率矩阵。您可以根据正确预测定义残差(将最可能的结果定义为预测,就像在 predict
对象的默认 polr
方法中一样)——或者您可以计算一个包含真实值和预测值的 n×n 表。或者,您可以将序数数据减少回整数尺度并计算平均结果作为预测......但我看不出有任何独特的方法来首先定义残差。
关于有序多项式回归中的残差和图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9238463/