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

时间:2015-02-12 14:58:00

标签: r prediction lme4

我一直在破坏我的(非r-savy)大脑,以获得R来产生二项式glmer模型的正确预测百分比。我知道这不是统计上的超级信息,但它经常被报道;所以我也想报告一下。

DATA:

从属变量:Tipo,有2个值:'s'或'p'。 一系列因子预测因子,而不是一个连续变量。 2个随机截距:测试对象,以及他/她回答的名词

用于模型的代码:

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 个答案:

答案 0 :(得分:7)

为了进行预测,您需要一个阈值(有关此主题的整个文献[搜索&#34; ROC曲线&#34;或&#34; AUC&#34;] ...)天真地采摘0.5截止值(如果你不知道或想要假设任何关于假阳性与假阴性的相对成本,或者相当于敏感性与特异性的值),这是一个合理的默认值,那么

p <- as.numeric(predict(model, type="response")>0.5)

应该给出预测的概率并将它们分别转换为0或1。然后

mean(p==datafile$Tipo)

应该给你正确的比例。

table(p,datafile$Tipo)

应该给你一个预测与观察的表格。