【问题标题】:Collapse a Pandas multiindex or run OLS regression on a multiindexed dataframe折叠 Pandas 多索引或在多索引数据帧上运行 OLS 回归
【发布时间】:2012-07-20 03:02:35
【问题描述】:

我使用 pivot 来重塑我的数据,现在有一个列 multiindex。我希望结果列是简单 OLS 回归中的 X 变量。 Y 是具有相同行索引的另一个系列。

当我尝试跑步时

model1 = ols(y = gdp0, x = MIDAS_small)

我明白了

TypeError: can only call with other hierarchical index objects

我可以想象两种解决方案,但无法弄清楚其中一种:

  1. 折叠多索引。与其拥有 ('before', 'var1') 和 ('after', 'var1') 形式的列,我只会有一堆 'beforevar1'、'aftervar1' 等。然后我可以使用 ols 来制作一张漂亮且足够清晰的表格。

  2. 有没有办法使用多索引运行回归?似乎它部分是为这类事情而设计的,尤其是面板回归,但我找不到任何相关的示例或文档。

好吧,我找到了#1 的一个不优雅的解决方案: 我可以创建一个新的数据框,遍历两个列索引,并将新列插入到具有相同名称的新数据框中,但名称为字符串而不是元组。一定有更优雅的单一命令吧?

【问题讨论】:

  • 请添加示例数据集

标签: python hierarchical-data regression pandas multi-index


【解决方案1】:

您是否厌倦了使用来自 Patsy 的 dmatricies 来准备回归友好的 DataFrame?

这里有一个例子:

http://statsmodels.sourceforge.net/devel/gettingstarted.html

我确定您知道 pandas 中的 .unstack() 函数可以让您删除分层索引,但它与 dmatrices 可能会产生您正在寻找的结果。

【讨论】:

    猜你喜欢
    • 2016-02-24
    • 1970-01-01
    • 2021-01-17
    • 2017-05-20
    • 1970-01-01
    • 1970-01-01
    • 2016-09-06
    • 2019-05-16
    • 1970-01-01
    相关资源
    最近更新 更多