mom*_*ind 2 python numpy list dataframe pandas
假设我有一个购买的 pandas 数据框,没有这样的发票 ID
item_id customer_id
1 A
2 A
1 B
3 C
4 C
1 A
5 A
Run Code Online (Sandbox Code Playgroud)
因此,我的假设是,如果客户连续订单购买了多个商品,则它们属于一组。所以我想创建一个 order_id 列:
item_id customer_id order_id
1 A 1
2 A 1
1 B 2
3 C 3
4 C 3
1 A 4
5 A 4
Run Code Online (Sandbox Code Playgroud)
order_id 应自动创建且增量。我应该如何处理熊猫呢?
非常感谢
IIUC,这是一种方法:
df['order_id'] = df.customer_id.ne(df.customer_id.shift()).cumsum()
Run Code Online (Sandbox Code Playgroud)
输出:
item_id customer_id order_id
0 1 A 1
1 2 A 1
2 1 B 2
3 3 C 3
4 4 C 3
5 1 A 4
6 5 A 4
Run Code Online (Sandbox Code Playgroud)