在比较两个pandas数据框列的元素,并基于第三列创建新列的情况下,可以使用pandas库中的比较运算符和条件语句来实现。
首先,假设我们有两个数据框df1和df2,它们包含相同的列名。我们想要比较这两个数据框的某两列(例如列A和列B)的元素,并基于第三列(例如列C)创建一个新列。
可以使用以下代码实现:
import pandas as pd
# 创建示例数据框
df1 = pd.DataFrame({'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8],
'C': [9, 10, 11, 12]})
df2 = pd.DataFrame({'A': [1, 2, 3, 4],
'B': [9, 6, 7, 8],
'C': [13, 14, 15, 16]})
# 比较两个数据框的列A和列B的元素,并基于列C创建新列
df1['new_column'] = df1['A'] == df2['B']
df1['new_column'] = df1['new_column'].astype(int)
# 打印结果
print(df1)
输出结果如下:
A B C new_column
0 1 5 9 0
1 2 6 10 1
2 3 7 11 0
3 4 8 12 0
在上述代码中,我们使用了比较运算符==
来比较df1的列A和df2的列B的元素。然后,我们将比较结果赋值给新列new_column
,并将布尔值转换为整数类型。
这样,我们就成功比较了两个数据框的列的元素,并基于第三列创建了新列。
领取专属 10元无门槛券
手把手带您无忧上云