Python 如何根据另一行对行排序?

Python 如何根据另一行对行排序?,python,pandas,Python,Pandas,请检查以下内容: 输入 上述线程涵盖了公式为:=IF(A2A1,1,B1+1) 如果您需要的输出是=if(A2=A1,1,B1+1) 输出看起来像 Column A Column B H 1 H 1 H 1 J 2 J 2 J 2 J 2 K 3 使用shift和cumsum: df["new"] = df["C

请检查以下内容: 输入

上述线程涵盖了公式为:
=IF(A2A1,1,B1+1)

如果您需要的输出是
=if(A2=A1,1,B1+1)

输出看起来像

Column A     Column B
H            1
H            1
H            1
J            2
J            2
J            2
J            2
K            3

使用
shift
cumsum

df["new"] = df["Column A"].ne(df["Column A"].shift(1)).cumsum()

print (df)

  Column A  Column B  new
0        H         1    1
1        H         1    1
2        H         1    1
3        J         2    2
4        J         2    2
5        J         2    2
6        J         2    2
7        K         3    3
df["new"] = df["Column A"].ne(df["Column A"].shift(1)).cumsum()

print (df)

  Column A  Column B  new
0        H         1    1
1        H         1    1
2        H         1    1
3        J         2    2
4        J         2    2
5        J         2    2
6        J         2    2
7        K         3    3