R語言泊松Poisson回歸模型分析案例|附代碼數據

2023-07-19     tecdat拓端

原標題:R語言泊松Poisson回歸模型分析案例|附代碼數據

原文連結:http://tecdat.cn/?p=2605

最近我們被客戶要求撰寫關於泊松Poisson回歸的研究報告,包括一些圖形和統計輸出。

這個問題涉及馬蹄蟹研究的數據。研究中的每隻雌性馬蹄蟹都有一隻雄性螃蟹貼在她的巢穴中。這項研究調查了影響雌蟹是否有其他男性居住在她附近的因素。被認為影響這一點的解釋變量包括雌蟹的顏色(C),脊椎狀況(S),體重(Wt)和甲殼寬度(W)。

數據文件:crab.txt。

我們將首先擬合僅具有一個自變量:寬度(W)的泊松回歸模型

估計的模型是:$ log(\ hat {\ mu_i})$ = -3.30476 + 0.16405W ilog(μi^) = - 3.30476 + 0.16405W

估計的β= 0.164的ASE為0.01997,這是小的,並且該斜率在z值為8.216及其低p值的情況下在統計學上是顯著的。

如果我們看一下W對Sa的散點圖(見下文),我們可能會懷疑一些異常值

您可以考慮其他類型的殘差,影響度量(如我們在線性回歸中看到的)以及殘差圖。

以下是運行R代碼其他部分的輸出的一部分:

從上面的輸出中,我們可以看到預測計數(「擬合」)和線性預測變量的值,即預期計數的對數值。

我們也可以看到,儘管預測是有意義的,但模型並不適合。考慮到殘差統計值為567.88和df為171 ,p值為零,殘差統計值/ DF = 567.88 / 171 = 3.321遠大於1,因此該模型不適合。缺乏適合可能是由於缺少數據,協變量或過度分散。

更改模型

在上述模型中,我們檢測到一個潛在的過分散問題,因為比例因子,例如殘差偏差的值/ DF遠大於1。

回想一下,過度分散的原因之一是異質性,其中每個協變量組合中的主體仍然差異很大。如果是這樣的話,是否違背了Poisson回歸模型的泊松模型的假設?

上述R程序的輸出:

在這個模型中,隨機分量在響應具有相同均值和方差的情況下不再具有泊松分布。根據給定的估計值(例如Pearson X 2 = 3.1822),隨機分量的變化(響應)大約是平均值的三倍。

除了過度分散之外,如何忽略其他解釋變量?我們可以通過添加其他變量來提高擬合度嗎?

我們來比較一下這個輸出和只有「W」作為預測的模型。我們將「虛擬變量」引入到模型中,以表示具有4級的顏色變量,其中4級作為參考級別。

此外,如果您運行anova(model.disp),從下面的輸出中我們可以看到,在考慮寬度後,顏色幾乎沒有統計上顯著的預測因子。

> anova(model.disp)

Df Deviance Resid。Df Resid。Dev

NULL 172 632.79

W 1 64.913 171 567.88

C1 1 3.130 170 564.75

C2 1 5.400 169 559.35

C3 1 0.004 168 559.34

此模型是否適合數據更好,是否適合過度分散?

R代碼的這部分做以下更改:

將此輸出的部分與上面的輸出相比較,我們將顏色用作分類預測器。我們這樣做只是為了記住同一個變量的不同編碼會給你不同的擬合和估計值。

現在估計的模型是什麼?$ \ log {\ hat {\ mu_i}} $ = -2.520 + 0.1496W - 0.1694C。logμi^ = -2.520 + 0.1496W - 0.1694C。

由於添加協變量沒有幫助,過度分散似乎是由於異質性。我們可以用這些數據做些什麼嗎?

數據分組

我們考慮按寬度分組數據,然後擬合泊松回歸模型。這裡是按W排序的數據。

數據已分成8個區間,如下面的(分組)數據所示

請注意,「NumCases」是位於特定區間內的雌性螃蟹的數量,限定了這些雌性螃蟹的背寬。「AverWt」是該分組內的平均背寬。

更改模型

我們還創建了一個變量lcases = log(樣本),其中記錄了樣本數量的對數。這是輸出。

模型現在比以前更好還是更差?它顯然更適合。例如,殘差統計值的值/ DF現在是1.0861。

殘差分析也顯示了良好的擬合度。

我們來比較下圖中的觀察值和擬合值(預測值):

我們可以擬合泊松回歸模型。請注意,該模型不適合分組數據,因為與先前的模型相比,殘差統計的值/ DF約為11.649。

點擊標題查閱往期內容

PYTHON用戶流失數據挖掘:建立邏輯回歸、XGBOOST、隨機森林、決策樹、支持向量機、樸素貝葉斯和KMEANS聚類用戶畫像

Python對商店數據進行lstm和xgboost銷售量時間序列建模預測分析

PYTHON集成機器學習:用ADABOOST、決策樹、邏輯回歸集成模型分類和回歸和網格搜索超參數優化

R語言集成模型:提升樹boosting、隨機森林、約束最小二乘法加權平均模型融合分析時間序列數據

Python對商店數據進行lstm和xgboost銷售量時間序列建模預測分析

R語言用主成分PCA、 邏輯回歸、決策樹、隨機森林分析心臟病數據並高維可視化

R語言基於樹的方法:決策樹,隨機森林,Bagging,增強樹

R語言用邏輯回歸、決策樹和隨機森林對信貸數據集進行分類預測

spss modeler用決策樹神經網絡預測ST的股票

R語言中使用線性模型、回歸決策樹自動組合特徵因子水平

R語言中自編基尼係數的CART回歸決策樹的實現

R語言用rle,svm和rpart決策樹進行時間序列預測

python在Scikit-learn中用決策樹和隨機森林預測NBA獲勝者

python中使用scikit-learn和pandas決策樹進行iris鳶尾花數據分類建模和交叉驗證

R語言里的非線性模型:多項式回歸、局部樣條、平滑樣條、 廣義相加模型GAM分析

R語言用標準最小二乘OLS,廣義相加模型GAM ,樣條函數進行邏輯回歸LOGISTIC分類

R語言ISLR工資數據進行多項式回歸和樣條回歸分析

R語言中的多項式回歸、局部回歸、核平滑和平滑樣條回歸模型

R語言用泊松Poisson回歸、GAM樣條曲線模型預測騎自行車者的數量

R語言分位數回歸、GAM樣條曲線、指數平滑和SARIMA對電力負荷時間序列預測R語言樣條曲線、決策樹、Adaboost、梯度提升(GBM)算法進行回歸、分類和動態可視化

如何用R語言在機器學習中建立集成模型?

R語言ARMA-EGARCH模型、集成預測算法對SPX實際波動率進行預測在python 深度學習Keras中計算神經網絡集成模型R語言ARIMA集成模型預測時間序列分析R語言基於Bagging分類的邏輯回歸(Logistic Regression)、決策樹、森林分析心臟病患者

R語言基於樹的方法:決策樹,隨機森林,Bagging,增強樹

R語言基於Bootstrap的線性回歸預測置信區間估計方法

R語言使用bootstrap和增量法計算廣義線性模型(GLM)預測置信區間

R語言樣條曲線、決策樹、Adaboost、梯度提升(GBM)算法進行回歸、分類和動態可視化

Python對商店數據進行lstm和xgboost銷售量時間序列建模預測分析

R語言隨機森林RandomForest、邏輯回歸Logisitc預測心臟病數據和可視化分析

R語言用主成分PCA、 邏輯回歸、決策樹、隨機森林分析心臟病數據並高維可視化

Matlab建立SVM,KNN和樸素貝葉斯模型分類繪製ROC曲線

matlab使用分位數隨機森林(QRF)回歸樹檢測異常值

文章來源: https://twgreatdaily.com/zh-sg/168b97f9a291bbcf5b5283ffb8edbabd.html