R中perm.lmer置换检验截距项p值为NA的原因、解读及用法验证
关于perm.lmer模型截距项p值为NA的问题解答
问题背景
我研究FROH(近交水平)随age的变化,将island和year设为随机效应,使用perm.lmer函数构建如下模型:
permmod1<- perm.lmer(FROH ~ age + (1|island) + (1|year) , data = Ad_Data, nperm = 1000, type = "regression", progress = F)
得到的结果中截距项p值为NA,且数据无缺失值。请问该情况的原因是什么?如何解读?使用perm.lmer函数是否有误?
输出结果如下:
> permmod1 Factor LRT beta t p 1 (Intercept) 3159.75993 0.030081868 6.408866 NA 2 age 13.51311 -0.001078063 -2.835235 0.003 > summary(permmod1) Factor LRT beta t p Length:2 Min. : 13.51 Min. :-0.001078 Min. :-2.8352 Min. :0.003 Class :character 1st Qu.: 800.07 1st Qu.: 0.006712 1st Qu.:-0.5242 1st Qu.:0.003 Mode :character Median :1586.64 Median : 0.014502 Median : 1.7868 Median :0.003 Mean :1586.64 Mean :0.014502 Mean :1.7868 Mean :0.003 3rd Qu.:2373.20 3rd Qu.:0.022292 3rd Qu.:4.0978 3rd Qu.:0.003 Max. :3159.76 Max. :0.030082 Max. :6.4089 Max. :0.003 NA's :1
原因分析
- 置换检验的逻辑限制:
perm.lmer采用置换检验计算p值,核心是打乱响应变量(FROH)的顺序、重新拟合模型来生成检验统计量的分布。但截距项代表age=0时的FROH预测值,置换操作无法生成“截距为0”这一零假设对应的分布——打乱响应变量不会改变截距作为观测值中心趋势估计的本质,因此无法计算其p值,返回NA。 - 函数默认行为:
perm.lmer默认不对截距项做置换检验,因为截距的显著性在多数回归分析中没有实际研究价值,我们更关注自变量(age)对因变量的影响,而非age=0时的基准值是否显著不为0。
结果解读
- 截距项的NA是正常现象,无需纠结。截距的beta值(0.0301)和t值(6.4089)依然有效,它表示age=0时FROH的估计值为0.0301,常规t检验下该估计值与0的差距显著,但置换检验不提供这个显著性的p值。
- age项的p值为0.003,说明在控制island和year的随机效应后,age对FROH的负向影响(beta=-0.0011)在1000次置换检验中具有统计学显著性。
函数使用是否有误?
没有错误。你的模型设定符合研究目的:用island和year作为随机效应控制组间变异,用置换检验应对可能的正态性假设不满足问题,函数调用的参数(nperm=1000、type="regression")也合理。截距项的NA是置换检验的固有特性,不是函数使用错误导致的。
内容的提问来源于stack exchange,提问作者Nitya Shrestha
相关产品推荐
相关产品推荐

