对于非正态分布的广义线性混合模型(GLMM),上一版的glmm.hp()默认分解是r.squaredGLMM()输出矩阵的第一行的R2, 比如对于二项分布的GLMM,第一行就是theoretical类型R2,第二行为delta类型R2。在写包的时候,我试一下几个二项分布的GLMM案例,总是theoretical比delta类型R2的高。作为普通的用户,肯定都是倾向于“就高不就低”原则选择R2,因此之前版本就默认选择第一行R2进行分解。通过参考r.squaredGLMM()帮助可以得知,其实在r.squaredGLMM输出的矩阵有delta、log-normal、 trigamma和theoretical等诸多版本R2,这些方法的差别是参考不同文献的混合模型R2的算法,详情参考r.squaredGLMM()的帮助文件和里面所列文献。不同数据分布类型对应也是不同的类别R2, 比如负二项分布的是有theoretical和delta两种类型R2,泊松分布有delta、log-normal和trigamma三种类型R2,这也充分说明GLMM的 R2的多样性和不确定性。说不定MuMIn的作者们也正在根据更新的文献不断增加或是修改R2的估算方式。考虑到这种情况,我重新修改了glmm.hp函数,对r.squaredGLMM输出矩阵中所有类型的marginal R2进行分解。而对于函数输出结果也做了修改,目前新版本(0.0-2)只报告每个固定效应的individual cntribution, 而不再报告unique和average shared结果,也不提供之前commonality分析结果,这样是为了让输出结果更简洁。 目前,新版的glmm.hp 0.0-2已经同步到CRAN和github上。作为包的开发者,必须强调的是,由于GLMM的R2至今是“众说纷纭,莫衷一是”,尽管我们分解的是最常用的Nakagawa R2,采用的是基于所有模型的层次分割的算法,虽然分割后的结果符合满贡献率(full contribution)的基本要求,但层次分割是否能简单用于GLMM,我目前还是无法确定。但统计学的指标就是如此,对错有时真是无法验证,但只要用的人多了,就自然成为大家约定俗成所谓的“标准”。希望glmm.hp分解结果也能成为标准。但这不仅需要通过模拟的数据来验证,更需要大家试用后反馈意见,真诚希望获得大家的反馈!发我邮件185756911@qq.com,或是加我QQ联系。
最后要感谢中科院环境生态中心张霜博士在春节期间帮忙测试上一版glmm.hp包、厘清Nakagawa R2算法和提供很多宝贵的意见!
现在请重新安装glmm.hp包!
install.packages("glmm.hp")
https://blog.sciencenet.cn/blog-267448-1324618.html
上一篇:
一个简洁的子集获取的代码下一篇:
关于glmm.hp函数的数据文件名的规定