熊猫在10分钟内按时间序列分组,并保留一些列

时间:2018-08-06 20:08:10

标签: python pandas

我有此信息;其中“ opid”是绝对的

datetime                id      nut      opid     user       amount
2018-01-01 07:01:00    1531     3hrnd     1       mherrera     1
2018-01-01 07:05:00    9510     sd45f     1       svasqu       1
2018-01-01 07:06:00    8125     5s8fr     15      urubi        1
2018-01-01 07:08:15    6324     sd5d6     1       jgonza       1
2018-01-01 07:12:01    0198     tgfg5     1       julmaf       1
2018-01-01 07:13:50    6589     mbkg4     15      jdjiep       1
2018-01-01 07:16:10    9501     wurf4     15      polga        1

我正在寻找的结果是这样的

datetime                opid     amount
2018-01-01 07:00:00      1        3
2018-01-01 07:00:00      15       1
2018-01-01 07:10:00      1        1
2018-01-01 07:10:00      15       2

所以...基本上我需要知道每10分钟要完成多少个“ opid”

P.D的“金额”始终为1,“鸦片”的范围为1-15

1 个答案:

答案 0 :(得分:1)

使用 grouper

df.set_index('datetime').groupby(['opid', pd.Grouper(freq='10min')]).amount.sum()

opid  datetime
1     2018-01-01 07:00:00    3
      2018-01-01 07:10:00    1
15    2018-01-01 07:00:00    1
      2018-01-01 07:10:00    2
Name: amount, dtype: int64