Любая библиотека Python создает таблицы регрессии стиля публикации

Я использую Python для регрессионного анализа. Получив результаты регрессии, мне нужно суммировать все результаты в одну таблицу и преобразовать их в LaTex (для публикации). Есть ли какой-либо пакет, который делает это в Python? Что-то вроде estout в Stata, которое дает следующую таблицу:

введите описание изображения здесь

One Solution collect form web for “Любая библиотека Python создает таблицы регрессии стиля публикации”

Ну, в statsmodels есть statsmodels ; он не имеет всех колоколов и estout , но у него есть базовые функции, которые вы ищете (включая экспорт в LaTeX):

 import statsmodels.api as sm from statsmodels.iolib.summary2 import summary_col p['const'] = 1 reg0 = sm.OLS(p['p0'],p[['const','exmkt','smb','hml']]).fit() reg1 = sm.OLS(p['p2'],p[['const','exmkt','smb','hml']]).fit() reg2 = sm.OLS(p['p4'],p[['const','exmkt','smb','hml']]).fit() print summary_col([reg0,reg1,reg2],stars=True,float_format='%0.2f') =============================== p0 p2 p4 ------------------------------- const -1.03*** -0.01 0.62*** (0.11) (0.04) (0.07) exmkt 1.28*** 0.97*** 0.98*** (0.02) (0.01) (0.01) smb 0.37*** 0.28*** -0.14*** (0.03) (0.01) (0.02) hml 0.77*** 0.46*** 0.69*** (0.04) (0.01) (0.02) =============================== Standard errors in parentheses. * p<.1, ** p<.05, ***p<.01 

Или вот версия, где я добавляю R-Squared и количество наблюдений:

 print summary_col([reg0,reg1,reg2],stars=True,float_format='%0.2f', info_dict={'N':lambda x: "{0:d}".format(int(x.nobs)), 'R2':lambda x: "{:.2f}".format(x.rsquared)}) =============================== p0 p2 p4 ------------------------------- const -1.03*** -0.01 0.62*** (0.11) (0.04) (0.07) exmkt 1.28*** 0.97*** 0.98*** (0.02) (0.01) (0.01) smb 0.37*** 0.28*** -0.14*** (0.03) (0.01) (0.02) hml 0.77*** 0.46*** 0.69*** (0.04) (0.01) (0.02) R2 0.86 0.95 0.88 N 1044 1044 1044 =============================== Standard errors in parentheses. * p<.1, ** p<.05, ***p<.01 

Другой пример, на этот раз показывающий использование опции model_names и регрессий, в которых изменяются независимые переменные:

 reg3 = sm.OLS(p['p4'],p[['const','exmkt']]).fit() reg4 = sm.OLS(p['p4'],p[['const','exmkt','smb','hml']]).fit() reg5 = sm.OLS(p['p4'],p[['const','exmkt','smb','hml','umd']]).fit() print summary_col([reg3,reg4,reg5],stars=True,float_format='%0.2f', model_names=['p4\n(0)','p4\n(1)','p4\n(2)'], info_dict={'N':lambda x: "{0:d}".format(int(x.nobs)), 'R2':lambda x: "{:.2f}".format(x.rsquared)}) ============================== p4 p4 p4 (0) (1) (2) ------------------------------ const 0.66*** 0.62*** 0.15*** (0.10) (0.07) (0.04) exmkt 1.10*** 0.98*** 1.08*** (0.02) (0.01) (0.01) hml 0.69*** 0.72*** (0.02) (0.01) smb -0.14*** 0.07*** (0.02) (0.01) umd 0.46*** (0.01) R2 0.78 0.88 0.96 N 1044 1044 1044 ============================== Standard errors in parentheses. * p<.1, ** p<.05, ***p<.01 

Для экспорта в LaTeX используйте метод as_latex .

Я могу ошибаться, но я не думаю, что опция t-stats вместо стандартных ошибок (например, в вашем примере) реализована.

  • В чем разница между pandas ACF и statsmodel ACF?
  • Можем ли мы генерировать таблицу непредвиденных расходов для теста chisquare с помощью python?
  • Тест ADF в statsmodels в Python
  • Python Statsmodels: использование SARIMAX с экзогенными регрессорами для получения прогнозируемых средних и доверительных интервалов
  • Python: как оценивать остатки в StatsModels?
  • statsmodels linear regression - patsy formula для включения всех предикторов в модель
  • Может pandas groupby преобразовать DataFrame в серию?
  • Какой модуль статистики для python поддерживает один способ ANOVA с пост-hoc-тестами (Tukey, Scheffe или другой)?
  • Python - лучший язык программирования в мире.