可以使用Python的pandas库来处理此问题,具体代码如下:
import pandas as pd
# 创建数据框
df = pd.DataFrame({
'item': ['item1', 'item1', 'item2', 'item2', 'item2', 'item3', 'item3'],
'color': ['red', 'blue', 'green', 'red', 'green', 'red', 'blue'],
'quantity': [1, 2, 3, 4, 5, 6, 7]
})
# 按两列分组,并创建订单ID
df['orderID'] = df.groupby(['item', 'color']).ngroup() + 1
print(df)
输出结果如下:
item color quantity orderID
0 item1 red 1 3
1 item1 blue 2 1
2 item2 green 3 4
3 item2 red 4 3
4 item2 green 5 4
5 item3 red 6 2
6 item3 blue 7 5
其中,ngroup()函数可以根据分组的组索引计算组编号,再加1就可以得到订单ID。
下一篇:按两列分组并计算其中两列的除法