Python Pandas-groupby ID并选择输入后购买的项目

Python Pandas-groupby ID并选择输入后购买的项目,python,pandas,Python,Pandas,我有一个这样的数据帧: df=pd.DataFrame({“ID”:[1232141232143214552345234325234325234325234325132134132134], “日期时间”:[“2020-05-28”、“2020-06-12”、“2020-01-06”、“2020-01-10”、“2020-01-11”、“2020-02-06”、“2020-07-24”、“2020-10-14”、“2020-03-04”、“2020-09-11”、“2020-10-17”],

我有一个这样的数据帧:

df=pd.DataFrame({“ID”:[1232141232143214552345234325234325234325234325132134132134],
“日期时间”:[“2020-05-28”、“2020-06-12”、“2020-01-06”、“2020-01-10”、“2020-01-11”、“2020-02-06”、“2020-07-24”、“2020-10-14”、“2020-03-04”、“2020-09-11”、“2020-10-17”],

“类别”:[“计算机技术”、“幼儿”、“幼儿”、“鞋和包”、“幼儿”、“花园和园艺”、“乐器”、“手工制品”、“乐器”、“幼儿”、“美”]})
您可以通过测试创建面具
类别
通过,将第一个缺少的值替换为
False
,并传递给:


您可以通过使用创建带有测试
类别的掩码,将第一个缺少的值替换为
False
,并传递给:

#if necessary convert to datetimes and sorting
#df['DATETIME'] = pd.to_datetime(df['DATETIME'])
#df = df.sort_values(['ID','DATETIME'])


mask = df['CATEGORY'].eq('early childhood').groupby(df['ID']).shift(fill_value=False)
df = df[mask]
print (df)
        ID    DATETIME              CATEGORY
3   321455  2020-01-10        shoes and bags
5   234325  2020-02-06  garden and gardening
10  132134  2020-10-17                beauty