以下是一个示例代码,演示如何按键合并数据帧,并将重复数据作为新列:
import pandas as pd
# 创建示例数据帧
df1 = pd.DataFrame({'key': ['A', 'B', 'C', 'D'], 'value': [1, 2, 3, 4]})
df2 = pd.DataFrame({'key': ['B', 'D', 'E'], 'value': [5, 6, 7]})
# 使用merge函数按键合并数据帧,并将重复数据作为新列
merged_df = pd.merge(df1, df2, on='key', how='left', suffixes=('_df1', '_df2'))
merged_df['is_duplicate'] = merged_df['value_df1'] == merged_df['value_df2']
# 打印合并后的数据帧
print(merged_df)
输出结果如下:
key value_df1 value_df2 is_duplicate
0 A 1 NaN False
1 B 2 5.0 False
2 C 3 NaN False
3 D 4 6.0 False
在这个示例中,我们使用了merge
函数来按键合并两个数据帧df1
和df2
。on='key'
表示按照key
列进行合并。how='left'
表示使用左连接,即保留df1
中的所有行。suffixes=('_df1', '_df2')
表示给重复列名添加后缀,以区分来自不同数据帧的列。最后,我们创建了一个新列is_duplicate
,判断value_df1
和value_df2
是否相等,以标记重复数据。
下一篇:按键合并数组为多维数组