HAC標準誤差によるt検定

統計学




HAC標準誤差によるt検定

回帰分析における最小2乗法の推定量は、誤差項が次の過程を満たす時に最小分散線形不偏量推定(BLUE)になる。

  1. \(E[u_i] = 0\)
  2. \(V[u_i] = \sigma^2\)
  3. \(Cov[u_i, u_j] = 0\)

HAC標準誤差のHACは、Heteroskedastic and Autocorrelation Consistentの略で、不均一分散と系列相関に対して、一致性を持つ標準誤差である。

系列相関が認められる時、不均一分散の有無に関わらず、使うことができる。

HAC標準誤差は、開発者の名前からNewey-West推定量と呼ばれることが多い?

pythonで、HACのt検定

Statsmodel

#import
from sklearn.datasets import load_boston
import numpy as np
import pandas as pd
import statsmodels.formula.api as smf
import statsmodels.api as sm
#data_loading and data_setting
boston = load_boston()
data_X = boston.data
data_y = boston.target

n = data_X.shape[0]

nlags = int((n/100)**(1/3)*4)

results = sm.OLS(data_y, sm.add_constant(data_X)).fit(cov_type='HAC',cov_kwds={'maxlags':nlags})

pd.DataFrame({'t_hac':results.tvalues[1:]}, index=boston.feature_names).T

参考

  1. http://www.statsmodels.org/devel/generated/statsmodels.stats.sandwich_covariance.cov_hac.html#statsmodels.stats.sandwich_covariance.cov_hac
  2. https://en.wikipedia.org/wiki/Newey–West_estimator
タイトルとURLをコピーしました