Оценка первой разницы... в панде
У меня есть показанный ниже фрейм данных, на котором я хотел бы рассчитать первый оценщик различий между различными столбцами. Я нашел этот пакет, но не уверен, как его реализовать... также допустимы ли ко-вариации? Я новичок в питоне и статистике, поэтому любая помощь будет оценена!
Пакет, который я нашел: https://bashtage.github.io/linearmodels/doc/panel/models.html
Как форматировать данные: https://bashtage.github.io/linearmodels/doc/panel/examples/data-formats.html
Мои данные (теперь мультииндексированные):
vix eff bloom
time VIX_close FEDFUNDS time time
2017-06-16 10.380000 3.020000 1993-01-01 1993-01-01
2017-06-15 10.640000 3.025000 1993-02-01 1993-01-02
Моя попытка:
mod = FirstDifferenceOLS(master.FEDFUNDS, master.Kincaid)
res = mod.fit(cov_type='robust')
Что приводит к:
ValueError: Series can only be used with a 2-level MultiIndex
1 ответ
Есть простой способ сделать это!
1) Оставьте данные как есть (иначе НЕ мультииндексируйте и НЕ используйте пакет)
Код:
ARI Flesch Kincaid time VIX_close FEDFUNDS
14.289911 36.843078 13.187598 2004-03-01 17.223000 1.431333
14.825867 39.550341 13.849544 2004-04-01 16.304333 1.381667
2) Используйте pandas для вычисления первой разницы с помощью функции.diff():
differs = master.diff()
3) Регресс различия:
result = sm.ols(formula="Kincaid ~ VIX_close", data=differs).fit()
4) Та-да - все готово!