在python中为每个类分别从时间列创建10分钟的时间段

时间:2019-04-25 11:40:06

标签: python pandas datetime group-by period

我需要为数据帧中的每个类创建时间段,并根据时间列分别将它们命名为0、1、2、3

我已经尝试过

df = df.set_index(pd.DatetimeIndex(df['time']))
newdf = df.groupby(pd.TimeGrouper('10Min'),as_index=False).apply(lambda x: x['assetId'])
df['period'] = newdf.index.get_level_values(0)

但是; 该代码将时间分组,但是我在不同的类中具有相同的时间值,这就是其混合类的原因。我想分别为每个班级做。我的数据名人像:

Class  Time
702  2018-09-03T04:08:04Z
702  2018-09-03T04:18:34Z
703  2018-09-03T04:08:04Z
703  2018-09-03T04:40:05Z
703  2018-09-03T04:40:05Z

我需要得到的结果是;

Class  Time                Period
702  2018-09-03T04:08:04Z    1
702  2018-09-03T04:18:34Z    2
703  2018-09-03T04:08:04Z    1
703  2018-09-03T04:40:05Z    2
703  2018-09-03T04:40:05Z    3

0 个答案:

没有答案