glmmPQL()中的错误消息:MEEM中的错误(对象,控制,控制$ niterEM):在0级,第1块的backsolve中的奇点

时间:2017-07-19 15:42:28

标签: r glm

我的数据帧“MyDataRisk”有1个二项式响应变量(Risk)的36692行,以及3个连续+ 1个分类变量。 Id定义了研究地点的身份。以下是摘要:

> summary(MyDataRisk)
   id                         Landscape        Road_width        Risk      
Min.   :  1.00   Forest       : 7214   Min.   :3.800   Min.   :0.0000  
1st Qu.: 11.00   Double hedge : 4955   1st Qu.:5.500   1st Qu.:0.0000  
Median : 31.00   Simple hedge : 3490   Median :6.000   Median :0.0000  
Mean   : 40.92   Perp_Hedge   : 15433  Mean   :6.005   Mean   :0.1875  
3rd Qu.: 66.00   Edge         : 4020   3rd Qu.:6.400   3rd Qu.:0.0000  
Max.   :112.00   No_vegetation: 1580   Max.   :7.700   Max.   :1.0000  
Vegetation_height       Vegetation_Distance     
Min.   :-2.17260   Min.   :-1.32359  
1st Qu.:-0.54750   1st Qu.:-0.82262  
Median :-0.08318   Median : 0.04941  
Mean   : 0.00000   Mean   : 0.00000  
3rd Qu.: 0.61329   3rd Qu.: 1.04935  
Max.   : 2.70271   Max.   : 1.74702 

我使用以下glmmPQL来建模我的响应变量:

Mod1 <- glmmPQL(Risk ~ Vegetation_height+Road_width+Vegetation_Distance+Landscape
                              +Vegetation_height:Road_width
                              +Vegetation_height:Vegetation_Distance
                              +Vegetation_height:Landscape
                              +Road_width:Vegetation_Distance
                              +Road_width:Landscape
                              +Vegetation_Distance:Landscape,
                              data=MyDataRisk,
                              family = binomial, random = ~ 1|id)

我收到以下错误消息:

iteration 1
Error in MEEM(object, conLin, control$niterEM) : 
Singularity in backsolve at level 0, block 1

现在,分类变量“风景”的值“No_vegetation”在“植被高度”和“植被距离”方面没有变化。这是有道理的。问题可能来自这里。如果我选择删除“No_vegetation”的观测值,那么该模型可以正常工作。但是我想保留这些观察结果,因为它们在我的设计中很重要,并测试“景观”的所有值的相互作用,但是对于“No_vegetation”。

我知道可以修改模型的设计矩阵,但我无法理解它是否适​​用于我的情况,以及如何做...

0 个答案:

没有答案