首页 > 后端开发 > Python教程 > 如何查找一个 Pandas DataFrame 中不存在于另一个 DataFrame 中的行?

如何查找一个 Pandas DataFrame 中不存在于另一个 DataFrame 中的行?

Barbara Streisand
发布: 2024-12-09 07:59:11
原创
905 人浏览过

How to Find Rows in One Pandas DataFrame That Are Not in Another?

获取另一个 DataFrame 中不存在的 DataFrame 行

从一个 DataFrame (df1) 中获取不存在于另一个 DataFrame (df2) 中的行),可以执行以下步骤:

import pandas as pd

# Create the two DataFrames.
df1 = pd.DataFrame(data={'col1': [1, 2, 3, 4, 5, 3], 'col2': [10, 11, 12, 13, 14, 10]})
df2 = pd.DataFrame(data={'col1': [1, 2, 3], 'col2': [10, 11, 12]})

# Perform a left join, ensuring each row in df1 joins with a single row in df2.
df_all = df1.merge(df2.drop_duplicates(), on=['col1', 'col2'], how='left', indicator=True)

# Create a boolean condition to identify rows in df1 that are not in df2.
condition = df_all['_merge'] == 'left_only'

# Filter df1 based on the condition.
result = df1[condition]
登录后复制

这种方法确保仅提取 df1 中 df2 中不存在的行,同时考虑每行中的两个列值。独立检查各个列值的替代解决方案可能会导致不正确的结果。

以上是如何查找一个 Pandas DataFrame 中不存在于另一个 DataFrame 中的行?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板