要比较来自两个不同数据框的列,可以使用pandas库中的merge函数和equals函数。以下是一个包含代码示例的解决方法:
import pandas as pd
# 创建两个数据框
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [1, 2, 3], 'B': [7, 8, 9]})
# 使用merge函数将两个数据框合并
merged = pd.merge(df1, df2, on='A', suffixes=('_df1', '_df2'))
# 使用equals函数比较两个数据框的列
column_equals = merged['B_df1'].equals(merged['B_df2'])
print(column_equals) # 输出结果为False
在上面的代码中,首先创建了两个数据框df1和df2,它们都包含'A'和'B'两列。然后使用merge函数将两个数据框按照'A'列进行合并,并使用suffixes参数指定合并后的列名后缀。合并后的数据框保存在merged变量中。
最后,使用equals函数比较合并后数据框中的'B_df1'列和'B_df2'列。如果两列的值完全相同,则返回True;否则返回False。在上面的示例中,输出结果为False,说明两个数据框的'B'列不相等。