Python 如何为数据帧中的列应用多个条件?

Python 如何为数据帧中的列应用多个条件?,python,pandas,dataframe,shift,cumsum,Python,Pandas,Dataframe,Shift,Cumsum,我有一个如下所示的数据框,两列之间没有关系 项目 可乐 猫 1. 猫 1. 狗 1. 鱼 1. 鱼 1. 鱼 2. 蛇 2. 蛇 2. 蛇 2. 在transform df['new'] = df.groupby('col1').item.transform(lambda x : x.factorize()[0]+1) df item col1 new 0 cat 1 1 1 cat 1 1 2 dog 1 2 3 fi

我有一个如下所示的数据框,两列之间没有关系

项目 可乐 猫 1. 猫 1. 狗 1. 鱼 1. 鱼 1. 鱼 2. 蛇 2. 蛇 2. 蛇 2.
transform

df['new'] = df.groupby('col1').item.transform(lambda x : x.factorize()[0]+1)
df
    item  col1  new
0    cat     1    1
1    cat     1    1
2    dog     1    2
3   fish     1    3
4   fish     1    3
5   fish     2    1
6  snake     2    2
7  snake     2    2
8  snake     2    2

有人能帮我理解为什么代码末尾有+1吗?