Wald檢驗用來測試一個預測器是顯著與否,如下形式:
W =(beta_hat - beta_0)/ SE(beta_hat) 〜N(0,1)
所以不知何故,你會想輸入預測變量到測試中。從t.test
和f.test
的例子來看,輸入字符串或元組可能會更簡單,以指示您正在測試的內容。
下面是使用了f.test一個字符串的例子:
from statsmodels.datasets import longley
from statsmodels.formula.api import ols
dta = longley.load_pandas().data
formula = 'TOTEMP ~ GNPDEFL + GNP + UNEMP + ARMED + POP + YEAR'
results = ols(formula, dta).fit()
hypotheses = '(GNPDEFL = GNP), (UNEMP = 2), (YEAR/1829 = 1)'
f_test = results.f_test(hypotheses)
print(f_test)
,這裏是他們的example使用一個元組:
import numpy as np
import statsmodels.api as sm
data = sm.datasets.longley.load()
data.exog = sm.add_constant(data.exog)
results = sm.OLS(data.endog, data.exog).fit()
r = np.zeros_like(results.params)
r[5:] = [1,-1]
T_test = results.t_test(r)
如果你還在掙扎得到Wald檢驗工作,包括你的代碼,我可以嘗試幫助使其工作。