【问题标题】:merging dataframes by multiindex pandas通过多索引熊猫合并数据框
【发布时间】:2020-10-31 03:29:53
【问题描述】:

我正在尝试通过多索引合并 2 个数据集, 这是我的代码

h_d = h_d.merge(t,
                how='left',
                on=[h_d.index.levels[0].name,h_d.index.levels[1].name])

关于数据集:

  • 't' 是具有 2 级索引('State''RegionName')且只有一列(布尔值)的数据集。
  • 'h_d' 是一个具有完全相同索引和 3 列 (float64) 的数据集。

我确定索引是一样的,因为

t.index.levels[0].name == h_d.index.levels[0].name

t.index.levels[1].name == h_d.index.levels[1].name

都是return True,但合并后我得到KeyError: 'State'

【问题讨论】:

    标签: python pandas merge multi-index


    【解决方案1】:

    如果你正在寻找这样的东西,

                    bool,  float1,  float2, float3
    'state'
    'region name'
    

    然后:

    df = pd.concat([h.reset_index(drop=True),h_d.reset_index(drop=Tru‌​e)], axis=1)
    

    【讨论】:

      猜你喜欢
      • 2019-03-18
      • 2018-02-02
      • 2021-03-25
      • 1970-01-01
      • 1970-01-01
      • 2015-06-13
      • 1970-01-01
      • 2012-12-18
      • 1970-01-01
      相关资源
      最近更新 更多