可以使用apply
函数结合tolist
方法来比较DataFrame中每条记录的列表。
下面是一个示例代码:
import pandas as pd
# 创建示例DataFrame
df = pd.DataFrame({'A': [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
'B': [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
'C': [[1, 2, 3], [4, 5, 6], [9, 8, 7]]})
# 定义比较函数
def compare_lists(row):
return row['A'] == row['B'] == row['C']
# 应用函数到每条记录
df['comparison_result'] = df.apply(compare_lists, axis=1)
print(df)
输出结果:
A B C comparison_result
0 [1, 2, 3] [1, 2, 3] [1, 2, 3] True
1 [4, 5, 6] [4, 5, 6] [4, 5, 6] True
2 [7, 8, 9] [7, 8, 9] [9, 8, 7] False
在上述示例中,我们首先创建了一个包含列表的DataFrame。然后,定义了一个比较函数compare_lists
,该函数接收一条记录,比较该记录的'A'、'B'和'C'列的列表是否相等。最后,使用apply
函数将比较函数应用到每条记录上,并将结果存储在新的'comparison_result'列中。