我遇到了一些与我的数据有关的问题,需要一些帮助。 我试图运行有/无变量作为响应变量和几个解释变量(时间,地点,存在/缺勤数据,丰度数据)的glm分析。R - 二元响应模型中的分离问题 - glm,brglm,logistf
首先,我试图使用GLM()函数,但是我有关于glm.fit()2个警告: 1:glm.fit:算法没有收敛 2:glm.fit:嵌合概率数值0或发生了1次 经过一番调查后,我发现问题很可能是准完全分离,因此决定使用brglm和/或logistf。
logistf:分析不运行 当运行logistf()我得到一个错误消息说:在chol.default(X) 错误: 导致未成年人39不是正定 我看着logistf包手册,在互联网上,在Heinze和Ploner的理论和技术论文中找不到这个功能的用途,以及错误是否可以通过一些设置来解决。
brglm:分析运行 不过,我得到一个警告消息说: 在fit.proc(X = X,Y = Y,重量=砝码,开始=启动,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)
@moderator考虑这一点移动到stats.stackexchange.com? – 2014-12-13 19:47:26