【发布时间】:2021-01-27 11:37:39
【问题描述】:
我有一个这样的数据集
df = pd.DataFrame({'time':['13:30', '9:20', '18:12', '19:00', '11:20', '13:30', '15:20', '17:12', '16:00', '8:20'],
'item': [coffee, bread, pizza, rice, soup, coffee, bread, pizza, rice, soup]})
首先需要根据这些时间间隔将时间分成 3 类 早餐间隔为 (6,11],午餐为 (11,15],晚餐为 (15,20])。
这是我的代码:
df['hour'] = df.Time.apply(lambda x: int(x.split(':')[0]))
def time_period(hour):
if hour >= 6 and hour < 11:
return 'breakfast'
elif hour >= 11 and hour < 15:
return 'lunch'
else:
return 'dinner'
df['meal'] = df['hour'].apply(lambda x: time_period(x))
但我不知道如何执行“groupby”部分。
【问题讨论】:
-
不要一次打开同一个问题。
标签: python group-by jupyter-notebook timestamp