我有一个看起来像这样的pandas DataFrame
Date item count
2019-01-01 i1 25
2019-01-01 i2 46
2019-01-02 i1 97
2019-01-02 i2 23
2019-01-02 i3 26
2019-01-03 i4 237
2019-01-04 i2 25
2019-01-10 i2 59
日期的类型为日期时间
我正在寻找一种方法来获取每个项目的总和,将其归为每周垃圾箱。结果数据框应如下所示:
Week i1 i2 i3 i4
(2019-01-01, 2019-01-08] 122 94 26 237
(2019-01-08, 2019-01-15] 0 59 0 0
我已经看过Pandas pd.cut() - binning datetime column / series来创建日期箱,但是我不希望按箱分组的项目计数,而是希望按箱分组的项目总数。到目前为止,我唯一有效的解决方案是使用pandas.iterrows()
并遍历每一行。有更好的方法吗?
答案 0 :(得分:1)
我们在df[:50]
之后有unstack
groupby