2024-03-29 11:09:53 发布
网友
我的表格如下:
顾客在不同的日期购买商品。每个客户都有不同的号码。每个项目都有不同的ID
我想有一个单独的信息列为每个ID是它的第一项为给定的客户或第二或第三等
我试着:
df['item_order'] = np.where(df['Customer']==df['Customer'].shift(), df.item_order.shift()+1, 0)
但是只有0代表第一,1代表第二,第三等等
您可以使用pandas尝试下面的代码
df[['ID','Customer','Date']].groupby(['ID','Customer']).agg('count')
如果这是您期望的输出,请告诉我
谢谢大家的帮助,解决办法是排名法。你知道吗
您可以为我的问题找到以下解决方案: df['rank']=df.sort\u值('Customer').groupby('Customer')。日期.等级(method='first')
您可以使用pandas尝试下面的代码
如果这是您期望的输出,请告诉我
谢谢大家的帮助,解决办法是排名法。你知道吗
您可以为我的问题找到以下解决方案: df['rank']=df.sort\u值('Customer').groupby('Customer')。日期.等级(method='first')
相关问题 更多 >
编程相关推荐