二元响应模型中的R-分离问题-glm、brglm、logistf

二元响应模型中的R-分离问题-glm、brglm、logistf,r,binary,glm,logistf,R,Binary,Glm,Logistf,我的数据遇到了一些问题,需要一些帮助。 我尝试使用一个存在/不存在变量作为响应变量和几个解释变量(时间、位置、存在/不存在数据、丰度数据)来运行glm分析 首先,我尝试使用glm()函数,但是有两个关于glm.fit()的警告: 1:glm.fit:算法未收敛 2:glm.fit:拟合概率数值为0或1 经过一些调查,我发现问题很可能是准完全分离,因此决定使用brglm和/或logistf logistf:分析不会运行 运行logistf()时,我收到一条错误消息,上面说: chol.defau

我的数据遇到了一些问题,需要一些帮助。 我尝试使用一个存在/不存在变量作为响应变量和几个解释变量(时间、位置、存在/不存在数据、丰度数据)来运行glm分析

首先,我尝试使用glm()函数,但是有两个关于glm.fit()的警告: 1:glm.fit:算法未收敛 2:glm.fit:拟合概率数值为0或1 经过一些调查,我发现问题很可能是准完全分离,因此决定使用brglm和/或logistf

  • logistf:分析不会运行 运行logistf()时,我收到一条错误消息,上面说: chol.default中的错误(x): 前导小调39不是正定的 我在互联网上查阅了海因策和普洛纳的理论和技术论文中的logistf软件包手册,但找不到该功能的使用位置,也找不到是否可以通过某些设置修复错误

  • brglm:分析运行 然而,我收到一条警告信息说: 在fit.proc中(x=x,y=y,weights=weights,start=start,etastart#=etastart,: 已达到迭代限制 像以前一样,我无法找到在运行包时使用此函数的位置和原因,以及是否可以通过调整某些设置来修复此函数

从更一般的角度来说,我想知道这些软件包的根本区别是什么

我希望这是有道理的,如果这是我不知道的统计证据,我很抱歉

这是我第一次问一个问题,所以我很抱歉,如果它不应该是,请你不要犹豫,让我知道这一点

谢谢你的帮助

Xochitl C


这里是我表格的摘录(由于表格太宽,我不得不截断长度中的行:20列)和我运行的不同公式:

head ()

Year Quarter Subarea Latitude Longitude    Presence.S CPUE.S Presence.H CPUE.H Presence.NP 

1 2000       1    31F1    51.25       1.5          0      0          0     0        0   
2 2000       1    31F2    51.25       2.5          0      0          0     0        0  
3 2000       1    32F1    51.75       1.5          0      0          0     0        0   
4 2000       1    32F2    51.75       2.5          0      0          0     0        0   
5 2000       1    32F3    51.75       3.5          0      0          0     0        0   
6 2000       1    33F1    52.25       1.5          0      0          0     0        0   

tail ()

Year Quarter Subarea Latitude Longitude Presence.S  CPUE.S Presence.H  CPUE.H 

4435 2012       3    50F3    60.75       3.5    1  103.000   1       110.000            
4436 2012       3    51E8    61.25      -1.5    1 1311.600   1       12.000   
4437 2012       3    51E9    61.25      -0.5    1   34.336   1       46.671               
4438 2012       3    51F0    61.25       0.5    1  430.500   1       148.000              
4439 2012       3    51F1    61.25       1.5    1  115.000   1       85.000              
4440 2012       3    51F2    61.25       2.5    1   72.500   1       5.500                 

logistf_binomPres <- logistf (Presence.S ~ (Presence.BW + Presence.W + Presence.C + Presence.NP +Presence.P + Presence.H +CPUE.BW + CPUE.H + CPUE.P + CPUE.NP + CPUE.W + CPUE.C + Year + Quarter + Latitude + Longitude)^2, data = CPUE_table)

Brglm_binomPres <- brglm (Presence.S ~ (Presence.BW + Presence.W + Presence.C + Presence.NP +Presence.P + Presence.H +CPUE.BW + CPUE.H + CPUE.P + CPUE.NP + CPUE.W + CPUE.C + Year + Quarter + Latitude + Longitude)^2, family = binomial, data = CPUE_table)
head()
年季度分区经纬度存在.S CPUE.S存在.H CPUE.H存在.NP
1 2000 1 31F1 51.25 1.5 0 0 0
2 2000 1 31F251.25 2.5 0 0 0
3200132F1 51.75 1.50 0
4 2000 1 32F251.75 2.5 0 0 0
52000 132f3 51.75 3.5 0 0 0
6 2000 1 33F1 52.25 1.5 0 0 0
尾()
年季度分区经纬度存在.S CPUE.S存在.H CPUE.H
4435 2012 3 50F3 60.75 3.5 1 103.000 1 110.000
4436 2012 351E8 61.25-1.511311.600 112000
4437 2012 351E9 61.25-0.5 1 34.336 1 46.671
4438 2012 3 51F0 61.25 0.5 1 430.500 1 148.000
4439 2012 3 51F1 61.25 1.5 1 115.000 1 85.000
4440 2012 3 51F2 61.25 2.5 1 72.500 1 5.500

logistf_binomPres值得一提的是,我还遇到了“前导小调I不确定”错误

这是因为我的第i个变量对于所有观察值都是相同的。 删除此变量解决了这个问题

希望这有帮助


<主持人>考虑将此移到StATS.STACKExchange?com?