下面是一个示例代码,展示了如何按照重复值和断点条件来创建新列:
import pandas as pd
# 创建示例数据
data = {'col1': [1, 1, 1, 2, 2, 2, 3, 3, 3],
'col2': [4, 5, 6, 7, 8, 9, 10, 11, 12]}
df = pd.DataFrame(data)
# 初始化新列
df['new_col'] = False
# 按照重复值和断点条件创建新列
prev_val = None
for index, row in df.iterrows():
curr_val = row['col1']
if curr_val != prev_val:
df.at[index, 'new_col'] = True
prev_val = curr_val
# 输出结果
print(df)
输出结果为:
col1 col2 new_col
0 1 4 True
1 1 5 False
2 1 6 False
3 2 7 True
4 2 8 False
5 2 9 False
6 3 10 True
7 3 11 False
8 3 12 False
在这个示例中,我们首先创建了一个包含两列的DataFrame对象。然后,我们初始化了一个新的列new_col
,并将其所有值设置为False。
接下来,我们使用iterrows()
方法遍历DataFrame的每一行,并根据当前值与前一个值的比较,将new_col
列的相应值设置为True或False。当当前值不等于前一个值时,我们将new_col
列的值设置为True,表示出现了新的重复值,否则设置为False。
最后,我们打印输出了更新后的DataFrame。