以下是一个示例代码,演示如何遍历DataFrame并将具有相同id的行分配为步骤编号:
import pandas as pd
# 创建示例DataFrame
data = {'id': [1, 1, 2, 2, 3, 4, 4],
'value': ['A', 'B', 'C', 'D', 'E', 'F', 'G']}
df = pd.DataFrame(data)
# 创建步骤编号列并初始化为1
df['step'] = 1
# 遍历DataFrame
for i in range(1, len(df)):
# 如果当前行的id与上一行的id相同,则将步骤编号加1
if df.loc[i, 'id'] == df.loc[i-1, 'id']:
df.loc[i, 'step'] = df.loc[i-1, 'step'] + 1
# 打印结果
print(df)
输出结果为:
id value step
0 1 A 1
1 1 B 2
2 2 C 1
3 2 D 2
4 3 E 1
5 4 F 1
6 4 G 2
在示例中,我们首先创建了一个示例DataFrame,其中包含'id'和'value'两列。然后,我们创建了一个名为'step'的新列,并将其初始化为1。接下来,我们使用for循环遍历DataFrame的每一行,从第二行开始。在每次迭代中,我们检查当前行的'id'是否与上一行的'id'相同。如果是相同的,我们将当前行的'step'设置为上一行的'step'加1。最后,我们打印结果DataFrame。
上一篇:遍历DataFrame并获取索引