派对暴徒包中的观察权重

observation weights in party mob package

我想在派对包 mob() 函数中包含观察权重,但收到以下错误消息:

m2 <- mob(ab_any ~ rdt_result | pfpr + peak2offpeak + urb_rur + region + fac6type + fac4owner + staff_doctor + supervision_lastvisit + rdt_totalguidelines + imci_guidelines + prov3qualif + mgt_meetings + userfees_routine + timer2observed + rdt2observed + amany2observed + abany2observed + provider_sex + provider_qualifyears + provider_incharge + provider_workhours + training_anyrdt + training_imci + provider_recentsupervision + provider_supervisiondiscuss + childage + childsex + parentage + nearestfacility + parenteduc + consultlength + starthour + waittime + cough + diarrhea + dangersign + real_temp + illnessduration, weights = P4Data$weight1, data = P4Data, model = glinearModel, family = binomial()) Error in if (any(y < 0 | y > 1)) stop("y values must be 0 <= y <= 1") : missing value where TRUE/FALSE needed

数据集 (P4Data$weights1) 中的样本权重是非负值,范围从 0.29865 到 5.084378,然后我将其相乘以创建整数值权重(29865 到 5084378)。请注意,如果相同的函数是 运行 但没有权重,我不会收到任何错误消息。

感谢您的指导。

错误信息指出ab_any的范围不符合family = binomial()的规范。它应该是 factor 或伪编码的 0/1 数值变量。目前看来并非如此。

至于权重:旧的 party 实现始终将 weights 参数视为案例权重。因此,将所有权重乘以 10 会使样本量增加 10,从而降低参数稳定性测试的 p 值!

一般来说,我强烈建议使用 partykit 包中 mob() 的新实现,它支持案例权重或比例权重,并且有更多的改进和附加功能。