【问题标题】:Python 2.7 groupby and then joinPython 2.7 groupby 然后加入
【发布时间】:2015-11-20 20:03:04
【问题描述】:

我的问题是关于如何加入由groupby 方法和sum()max() 函数创建的2 个数据帧。

案例是: 我有下一个结构的第一个数据框:

第二个结构相同,但不是DepartmentDescripton...变量,而是“星期一”、“星期二”等。

然后我尝试加入他们:

train_joined_dep_week = pd.merge(tr_bin_dep_grouped, tr_bin_weekday_grouped_flag, left_on=["VisitNumber"], right_on=["VisitNumber"], how='INNER')`

错误是

KeyError
Traceback (most recent call last)
<ipython-input-24-faccedccea7d> in <module>()
----> 1 train_joined_dep_week = pd.merge(tr_bin_dep_grouped, tr_bin_weekday_grouped_flag, left_on=["VisitNumber"], right_on=["VisitNumber"], how='INNER')
[...]
KeyError: 'VisitNumber'

注意:我有两个不同的聚合函数(sum()max()),所以我不能只制作 1 个数据帧。我认为问题在于sum() func 之后的错误数据结构,但我不明白如何以正确的方式制作它。

【问题讨论】:

    标签: python join pandas group-by


    【解决方案1】:

    当您使用groupby 聚合时,您分组的列会被移到索引中。您应该可以使用tr_bin_dep_grouped.reset_index(inplace=True) 重置索引,然后将两个数据框合并在一起。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-22
      • 1970-01-01
      • 2014-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多