迴歸診斷與規格檢定¶
簡介¶
在許多統計分析案例中,我們不確定我們的統計模型是否被正確地指定。例如,當使用 OLS 時,會假設線性性和同質變異性,一些檢定統計量還假設誤差呈常態分佈或我們有大的樣本。由於我們的結果取決於這些統計假設,因此結果只有在我們的假設成立(至少近似成立)時才是正確的。
解決規格不確定性問題的一個方法是使用穩健方法,例如穩健迴歸或穩健共變異數(三明治)估計量。第二種方法是檢定我們的樣本是否與這些假設一致。
以下簡要總結了線性迴歸的規格和診斷檢定。
異質變異性檢定¶
對於這些檢定,虛無假設是所有觀察值都具有相同的誤差變異數,即誤差是同質變異的。檢定之間的差異在於哪種異質變異性被視為對立假設。它們在不同類型的異質變異性的檢定力方面也不同。
het_breuschpagan
Breusch-Pagan 的拉格朗日乘數異質變異性檢定
het_white
White 的拉格朗日乘數異質變異性檢定
het_goldfeldquandt
檢定 2 個子樣本中的變異數是否相同
自相關檢定¶
這組檢定檢定迴歸殘差是否不具有自相關性。它們假設觀察值按時間排序。
durbin_watson
Durbin-Watson 檢定,檢定殘差是否無自相關
使用 summary() 列印
acorr_ljungbox
Ljung-Box 檢定,檢定殘差是否無自相關
也返回 Box-Pierce 統計量
acorr_breusch_godfrey
Breusch-Pagan 檢定,檢定殘差是否無自相關
- 遺失
?
非線性檢定¶
linear_harvey_collier
乘數檢定,檢定線性規格是否正確的虛無假設
acorr_linear_rainbow
乘數檢定,檢定線性規格是否正確的虛無假設。
acorr_linear_lm
拉格朗日乘數檢定,檢定線性規格是否正確的虛無假設。此檢定針對特定的函數替代方案。
spec_white
White 的二階矩規格檢定,其虛無假設為同質變異且規格正確。
結構變更、參數穩定性檢定¶
檢定所有或部分迴歸係數在整個資料樣本中是否恆定。
已知變更點¶
- OneWayLS
彈性的 OLS 包裝器,用於檢定預先定義的子樣本(例如群組)的迴歸係數是否相同
- 遺失
預測檢定:Greene,子樣本中的觀察值數量小於迴歸量的數量
未知變更點¶
breaks_cusumolsresid
基於 OLS 殘差的參數穩定性 CUSUM 檢定
breaks_hansen
模型穩定性檢定,OLS 參數中的中斷,Hansen 1992
recursive_olsresiduals
計算帶有殘差和 CUSUM 檢定統計量的遞迴 OLS。這目前主要是基於遞迴殘差檢定的輔助函數。然而,由於它使用遞迴更新並且不估計單獨的問題,因此它作為擴展 OLS 函數也應該非常有效。
- 遺失
supLM、expLM、aveLM (Andrews、Andrews/Ploberger)
R-structchange 也有 musum(移動累積和檢定)
對遞迴參數估計的檢定,它們在哪裡?
多重共線性檢定¶
- conditionnum (statsmodels.stattools)
– 需要與 Stata 進行檢定 –
參考 Grene(第 3 版)第 57-8 頁
- numpy.linalg.cond
(用於更一般的條件數,但沒有幕後幫助進行設計準備)
- 變異數膨脹因子
這目前與影響和離群值度量一起(與此處的其他一些檢定連結:http://www.stata.com/help.cgi?vif)
常態性與分佈檢定¶
jarque_bera
使用 summary() 列印
檢定殘差是否呈常態分佈
- scipy stats 中的常態性檢定
需要再次找到列表
omni_normtest
檢定殘差是否呈常態分佈
使用 summary() 列印
normal_ad
Anderson Darling 檢定,檢定具有估計平均值和變異數的常態性
kstest_normal
lilliefors
Lilliefors 檢定常態性,這是一個 Kolmogorov-Smirnov 檢定,檢定具有估計平均值和變異數的常態性。lilliefors 是 kstest_normal 的別名
qqplot, scipy.stats.probplot
- scipy.stats 中的其他分佈擬合優度檢定和增強功能
kolmogorov-smirnov
anderson : Anderson-Darling
概似比率,……
卡方檢定,冪次差異:需要包裝(用於分組)
離群值與影響診斷量測¶
這些量測嘗試識別離群值、具有大殘差的觀察值或對迴歸估計有很大影響的觀察值。穩健迴歸 RLM 可以用來以穩健的方式估計以及識別離群值。RLM 的優點是,即使有很多離群值,估計結果也不會受到強烈影響,而大多數其他量測方法更擅長識別單個離群值,並且可能無法識別離群值群組。
RLM
來自 example_rlm.py 的範例
import statsmodels.api as sm ### Example for using Huber's T norm with the default ### median absolute deviation scaling data = sm.datasets.stackloss.load() data.exog = sm.add_constant(data.exog) huber_t = sm.RLM(data.endog, data.exog, M=sm.robust.norms.HuberT()) hub_results = huber_t.fit() print(hub_results.weights)
權重讓人們了解根據要求的縮放,特定觀察值被向下加權的程度。
影響
stats.outliers_influence 中的類別,大多數離群值和影響的標準量測值都可用作給定擬合 OLS 模型的的方法或屬性。這主要是針對 OLS 撰寫的,一些(但不是全部)量測值也適用於其他模型。其中一些統計量可以從 OLS 結果實例計算,其他一些則需要為每個遺漏變數估計 OLS。
resid_press
resid_studentized_external
resid_studentized_internal
ess_press
hat_matrix_diag
cooks_distance - Cook's 距離 Wikipedia(以及其他一些連結)
cov_ratio
dfbetas
dffits
dffits_internal
det_cov_params_not_obsi
params_not_obsi
sigma2_not_obsi