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