Pandas中两个dataframe的交集和差集的示例代码
程序员文章站
2022-03-02 12:26:55
创建测试数据:import pandas as pdimport numpy as np #create a dataframedf1 = { 'subject':['semester1','sem...
创建测试数据:
import pandas as pd import numpy as np #create a dataframe df1 = { 'subject':['semester1','semester2','semester3','semester4','semester1', 'semester2','semester3'], 'score':[62,47,55,74,31,77,85]} df2 = { 'subject':['semester1','semester2','semester3','semester4'], 'score':[90,47,85,74]} df1 = pd.dataframe(df1,columns=['subject','score']) df2 = pd.dataframe(df2,columns=['subject','score']) print(df1) print(df2)
运行结果:
求两个dataframe的交集
intersected_df = pd.merge(df1, df2, how='inner') print(intersected_df)
也可以指定求交集的列:
intersected_df = pd.merge(df1, df2, on=['subject'], how='inner') print(intersected_df)
求差集
df2-df1:
set_diff_df = pd.concat([df2, df1, df1]).drop_duplicates(keep=false) print(set_diff_df)
df1-df2:
set_diff_df = pd.concat([df1, df2, df2]).drop_duplicates(keep=false) print(set_diff_df)
另一种求差集的方法是:
以df1-df2为例:
df1 = df1.append(df2) df1 = df1.append(df2) set_diff_df = df1.drop_duplicates(subset=['subject', 'score'],keep=false) print(set_diff_df)
得到的df1-df2结果是一样的:
到此这篇关于pandas中两个dataframe的交集和差集的示例代码的文章就介绍到这了,更多相关pandas dataframe交集差集内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
下一篇: vue实现两个区域滚动条同步滚动
推荐阅读
-
Python实现两个list求交集,并集,差集的方法示例
-
sql 查询 一张表里面的数据 在另一张表中是否存在 和 比对两个集合中的差集和交集(原创)
-
JS数组交集、并集、差集的示例代码
-
Java中多个集合的交集,并集和差集
-
Pandas DataFrame求差集的示例代码
-
Pandas中两个dataframe的交集和差集的示例代码
-
js取两个数组的交集|差集|并集|补集|去重示例代码_javascript技巧
-
JS数组交集、并集、差集的示例代码
-
Python实现两个list求交集,并集,差集的方法示例
-
sql 查询 一张表里面的数据 在另一张表中是否存在 和 比对两个集合中的差集和交集(原创)