【发布时间】:2018-10-15 19:42:11
【问题描述】:
我有一个pandas 数据框:
emp laborforce emp_rate
occ statefip quarter
10 1 0 6.561213e+06 7.017537e+06 0.934974
4 8.580723e+06 9.114996e+06 0.941385
8 8.588012e+06 9.102831e+06 0.943444
12 2.093297e+06 2.220923e+06 0.942535
2 0 6.561208e+06 7.017527e+06 0.934974
现在我想将每个(occ, statefip) 的平均emp_rate 合并到这个数据集中。我试过了
df2 = df1.groupby(level=[0, 1])['emp_rate'].mean()
df2.name = 'emp_rate_mean'
df1.join(df2, how='inner')
NotImplementedError: merging with more than one level overlap on a multi-index is not implemented
显然,如果第二个数据帧是单索引的,则这种类型的 join 会从 pandas 0.14 开始工作。它不是。在这种情况下,正确的方法是什么?
【问题讨论】:
标签: python pandas dataframe join multi-index