Доступ к отдельным параметрам в statsmodels

1

Я использую statsmodels.api для проверки статистических параметров из разных комбинаций переменных. Вы можете использовать print(results.summary()) чтобы получить

                            OLS Regression Results                            
==============================================================================
Dep. Variable:                      y   R-squared:                       0.454
Model:                            OLS   Adj. R-squared:                  0.454
Method:                 Least Squares   F-statistic:                     9694.
Date:                Mon, 30 Jul 2018   Prob (F-statistic):               0.00
Time:                        10:14:47   Log-Likelihood:                -9844.7
No. Observations:               11663   AIC:                         1.969e+04
Df Residuals:                   11662   BIC:                         1.970e+04
Df Model:                           1                                         
Covariance Type:            nonrobust                                         
==============================================================================
                 coef    std err          t      P>|t|      [0.025      0.975]
------------------------------------------------------------------------------
x1            -1.4477      0.015    -98.460      0.000      -1.477      -1.419
==============================================================================
Omnibus:                     1469.705   Durbin-Watson:                   1.053
Prob(Omnibus):                  0.000   Jarque-Bera (JB):             2504.774
Skew:                           0.855   Prob(JB):                         0.00
Kurtosis:                       4.493   Cond. No.                         1.00
==============================================================================

но говорят, что меня просто интересовала пара этих параметров, скажем, No. observations и R-squared. Как я могу напечатать только такие параметры, как эти? Использование print(results) дает только указатель на объект results:

print(results)
<statsmodels.regression.linear_model.RegressionResultsWrapper object at 0x0000020DAB8028D0>
Теги:
python-3.x
statsmodels

1 ответ

2
Лучший ответ

При установке модели с OLS возвращается объект RegressionResults - и из документов есть много атрибутов этого класса, которые дают вам определенную информацию, такую как количество наблюдений (nobs) и значение квадрата R (rsquared).

Взглянув на исходный код для summary, на самом деле просто форматирование всех доступных отдельно атрибутов в красивую таблицу для вас.

демонстрация

>>> Y = [1, 3, 4, 5, 2, 3, 4]; X = range(1, 8)

>>> model = sm.OLS(Y, X)

>>> results = model.fit()

>>> results.nobs, results.rsquared
(7.0, 0.16118421052631615)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню