Statsmodels: как выбрать разные доверительные интервалы для регрессий - PullRequest
0 голосов
/ 21 июня 2019

Я хочу запустить регрессию с доверительным интервалом 99% вместо 95% по умолчанию, используя statsmodels.

Я посмотрел документацию, если в методе fit () есть аргумент, но я ничего не заметил. Я попробовал также метод conf_int, но я смущен от вывода.

import pandas as pd
import math
import statsmodels.formula.api as sm
df = pd.read_excel(r'C:\TestData.xlsx')
df['LogBalance'] = df['Balance'].map(lambda x: math.log(x))
est = sm.ols(formula= 'LogBalance ~ N + Rate',       
    data=df).fit(cov_type='HAC',cov_kwds={'maxlags':1})
print(est.summary())
print(est.conf_int(alpha=0.01, cols=None))

Поскольку я новичок в Python, можете ли вы сказать мне, если и как я могу выполнить регрессию в statsmodels с откорректированными доверительными интервалами, если это возможно, в начальном выводе регрессии?

Спасибо

1 Ответ

1 голос
/ 22 июня 2019

Вы можете указать доверительный интервал в .summary() напрямую Пожалуйста, рассмотрите следующий пример:

import statsmodels.formula.api as smf
import seaborn as sns

# load a sample dataset
df = sns.load_dataset('tips')

# run model
formula = 'tip ~ size + total_bill'
results = smf.ols(formula=formula, data=df).fit()
# use 95 % CI (default setting)
print(results.summary())
OLS Regression Results                            
==============================================================================
Dep. Variable:                    tip   R-squared:                       0.468
Model:                            OLS   Adj. R-squared:                  0.463
Method:                 Least Squares   F-statistic:                     105.9
Date:                Fri, 21 Jun 2019   Prob (F-statistic):           9.67e-34
Time:                        21:42:09   Log-Likelihood:                -347.99
No. Observations:                 244   AIC:                             702.0
Df Residuals:                     241   BIC:                             712.5
Df Model:                           2                                         
Covariance Type:            nonrobust                                         
==============================================================================
                 coef    std err          t      P>|t|      [0.025      0.975]
------------------------------------------------------------------------------
Intercept      0.6689      0.194      3.455      0.001       0.288       1.050
size           0.1926      0.085      2.258      0.025       0.025       0.361
total_bill     0.0927      0.009     10.172      0.000       0.075       0.111
==============================================================================
Omnibus:                       24.753   Durbin-Watson:                   2.100
Prob(Omnibus):                  0.000   Jarque-Bera (JB):               46.169
Skew:                           0.545   Prob(JB):                     9.43e-11
Kurtosis:                       4.831   Cond. No.                         67.6
==============================================================================
# use 99 % CI
print(results.summary(alpha=0.01))
OLS Regression Results                            
==============================================================================
Dep. Variable:                    tip   R-squared:                       0.468
Model:                            OLS   Adj. R-squared:                  0.463
Method:                 Least Squares   F-statistic:                     105.9
Date:                Fri, 21 Jun 2019   Prob (F-statistic):           9.67e-34
Time:                        21:45:57   Log-Likelihood:                -347.99
No. Observations:                 244   AIC:                             702.0
Df Residuals:                     241   BIC:                             712.5
Df Model:                           2                                         
Covariance Type:            nonrobust                                         
==============================================================================
                 coef    std err          t      P>|t|      [0.005      0.995]
------------------------------------------------------------------------------
Intercept      0.6689      0.194      3.455      0.001       0.166       1.172
size           0.1926      0.085      2.258      0.025      -0.029       0.414
total_bill     0.0927      0.009     10.172      0.000       0.069       0.116
==============================================================================
Omnibus:                       24.753   Durbin-Watson:                   2.100
Prob(Omnibus):                  0.000   Jarque-Bera (JB):               46.169
Skew:                           0.545   Prob(JB):                     9.43e-11
Kurtosis:                       4.831   Cond. No.                         67.6
==============================================================================
...