1
我在運行負二項模型時遇到了一些麻煩。基本上,我有一個包含動物數量的數據集。然而,這種努力是不同的,因此我可以計算每天的動物比率。我用相當大的數據集(> 100000個觀察值)來做這件事。我很驚訝,我找不到涵蓋我的問題的其他主題,如果您知道的話:會有所幫助!使用非整數與整數:使用非整數的警告,但模型不會整數運行
當試圖將模型擬合到我的數據時,我遇到了一些問題。要麼我運行率
,然後負二項式模型,我得到以下警告消息:
>Warning messages:
1: In dpois(y, mu, log = TRUE) : non-integer x = 25.913718
2: In dpois(y, mu, log = TRUE) : non-integer x = 5.457385
3: In dpois(y, mu, log = TRUE) : non-integer x = 2.195133
4: In dpois(y, mu, log = TRUE) : non-integer x = 2.721088
5: In dpois(y, mu, log = TRUE) : non-integer x = 6.971678
6: In dpois(y, mu, log = TRUE) : non-integer x = 21.863799
7: In dpois(y, mu, log = TRUE) : non-integer x = 5.300733
8: In dpois(y, mu, log = TRUE) : non-integer x = 7.157865
9: In dpois(y, mu, log = TRUE) : non-integer x = 14.117588
10: In dpois(y, mu, log = TRUE) : non-integer x = 6.505993, etc.
或者我運行的偏移
> m2<-glm.nb(Count ~ Par1+Par2+...+Par7+Par8+offset(Effort),data=data)
然而,這模型給出以下錯誤:
> Error: no valid set of coefficients has been found: please supply starting values
In addition: Warning messages:
1: glm.fit: algorithm did not converge
2: glm.fit: fitted rates numerically 0 occurred
我已經嘗試提供第一個模型的係數作爲第二個的開始係數,但這不起作用。同樣使用pscl軟件包不起作用,或者增加迭代次數。這是我的數據的一個子集(一個物種),零點很少。
有什麼建議嗎?我覺得實際上建模的第二種方式是這樣做的正確方式,但我不知道如何讓這個模型運行。有任何想法嗎?將不勝感激。
所以,僅僅爲了我自己的理解:既然你正在查看響應變量的日誌,你還應該建模偏移量的日誌? 第二種方法似乎完美運行,沒有警告,也沒有運行模型的問題。非常感謝! – Tommele
沒錯。這兩種配方是等效的,所以第一種方法也應該起作用。 –
好的,完美的。出於某種原因,第一種方法對於我來說具有不同的結果,p值極低。也許它與這是一個負二項分佈有關,glm.nb必須首先找到theta? – Tommele