二项式glmer()预测的分类准确度

6

我一直在想办法让R生成二项式glmer模型的正确预测百分比。虽然这在统计学上不是非常有意义,但经常被报告,所以我也想报告它。

数据:

因变量是类型(Tipo),有两个值:'s'或'p'。有很多分类预测因子,没有单个连续变量。有两个随机截距:测试对象和他/她回答的名词。

用于该模型的代码:

model <- glmer(Tipo ~ agency + tense + 
               co2pr + pr2pr + socialclass + 
               (1|muestra) + (1|nouns), 
               data=datafile, family="binomial",
               control=glmerControl(optimizer="bobyqa"), 
               contrasts=c("sum", "poly"))

我知道有一个函数predict(),它可以使用模型对象进行预测,但是我似乎无法使其为我工作。如果您愿意分享代码,我将不胜感激。

提前感谢您。

1个回答

9
为了进行预测,您需要一个阈值(有整个文献[搜索“ROC曲线”或“AUC”]关于这个话题...)。如果您不知道或不想假设错误阳性与错误阴性的相对成本,或等效地敏感性与特异性的价值,则天真地选择0.5截止值是合理的默认值。
p <- as.numeric(predict(model, type="response")>0.5)

应该给出预测概率,然后将它们分别转换为0或1。然后,
mean(p==datafile$Tipo)

应该给你正确的比例。

table(p,datafile$Tipo)

应该为您提供一个预测与观测表格。

非常感谢Bolker博士,您让我的一天变得美好。 - Jeroen Claes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接