【问题标题】:Python/Pandas - Is there a good method for concatenating two multi-index dataframe in python/pandasPython/Pandas - 有没有一种在 python/pandas 中连接两个多索引数据帧的好方法
【发布时间】:2021-12-13 03:47:54
【问题描述】:

我正在尝试将两个多索引数据框放在一起。原始数据框具有完全相同的列和相似的值,然后按相同的列分组。

如下所示的原始数据框示例(我正在制作列,因为实际数据是机密的)

receiver product_name sent_time receive_time product_count subcomponent_count_1 subcomponent_count_2 packer
John LLC Apple watch 2021-10-20 2021-10-21 20 10 15 employee1
Sam LLC Apple pencil 2021-10-05 2021-10-06 10 7 2 employee1
.. .. .. .. .. .. .. ..

我转换数据框的步骤:

df3 = df1.groupby(['receiver','product_name','sent_time','receive_time','product_count']...
df4 = df2.groupby(['receiver','product_name','sent_time','receive_time','product_count']...

df_i_want = pd.concat([df_3,df_4])

但是,df_i_want 没有多索引结构,而是将所有 groupby 列放在同一列中。

如何将这两个多索引 df 放在一起(连接 df1 和 df2 然后进行 groupby 不是一个选项)?

谢谢大家!

【问题讨论】:

  • groupby 的目的是什么?如果您只是想拥有一个包含所有行的 df1 和 df2 的数据框,您可以这样做 df_i_want = df1.append(df2)?

标签: python pandas dataframe multi-index


【解决方案1】:
df_you_want = df_3.join(df_4.reindex(df_3.index, level=0))

来源:Merge two dataframes with multi-index

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-25
    • 2018-06-24
    • 2014-02-14
    • 1970-01-01
    • 2023-01-25
    • 2022-11-01
    • 1970-01-01
    • 2017-06-30
    相关资源
    最近更新 更多