glmer
我有一个使用in 函数拟合的 GLMM 对象,R
并且想要执行 k 折交叉验证。对于简单的 GLM,我使用CVbinary
了 pkg 中的函数,DAAG
如下所示。
> SimpleGLM <- glm(Res ~ Var1 + Var2, data = Data, family=binomial)
> CVbinary(SimpleGLM, nfolds=10, print.details=TRUE)
Fold: 3 2 4 1 7 10 6 9 5 8
Internal estimate of accuracy = 0.828
Cross-validation estimate of accuracy = 0.827
但是,当将 IndID 的随机项添加到模型中时,模型的 S4 类会导致错误(如下)glmer
。
GLMMod <- glmer(Res ~ Var1 + Var2 + (1|IndID), data = Data, family=binomial)
> CVbinary(GLMMod , nfolds=10, print.details=TRUE)
Error in obj$data : $ operator not defined for this S4 class
我一直在网上寻找,但无法找到CVbinary
与 S4 对象类似的功能,但在手动编码之前想在这里仔细检查一下。
简而言之,(假设我正确解释了R
错误)是否有对 S4 对象执行 k 折交叉验证的函数?