python - 对于两个数据框,如何检索两个标签值的组合在一个但不在另一个的行
问题描述
在我的 python 应用程序中,我有两个带有以下标签的数据框:
df1:: page, origin, count
df2:: page, claim, verdict, origin
在哪里:
每个特定页面可以有多个来源,并且不同页面的来源可能会重复:
df1 包含所有页面及其相关来源的大列表(因此同一页面可以重复)
df2 包含用户访问的页源组合的详细信息
我想要做的是,使用我假设,获取某个用户尚未访问的.loc
所有行。df1
我想page-origin
用作某种主键来删除中的所有相应行df2
。df1
例如:
df1:
page origin count
www.h1.com www.h1.com 2
www.h1.com www.h2.com 1
www.h2.com www.h1.com 0
www.h3.com www.h4.com 4
和
df2:
page claim verdict origin count
www.h1.com | the world is flat | false | www.h1.com 2
www.h1.com | the world is flat | false | www.h2.com 3
会给:
page origin count
www.h2.com www.h1.com 0
www.h3.com www.h4.com 4
解决方案
感谢@yatu 的回答,这是使用
df1[~(df1.page.isin(df2.page) & df1.origin.isin(df2.origin))]
推荐阅读
- redis - 无法连接到 Redis;嵌套异常是 io.lettuce.core.RedisConnectionException 使用 ReactiveRedisTemplate
- xml - 用一个最深的循环限制递归并为所有元素分配准确的 id
- c - 如何使用此方法将 C 宏扩展为结构和函数
- anaconda - 无法使用“c:\users\hp\anaconda3\python.exe”创建进程
- swiftui - 将 SFSymbol 添加到 VStack 会创建奇数间距
- java - Java中的2个比较器类
- xcode - 由于 Xcodebuild,每个命令的终端都停止
- google-apps-script - 满足某些条件时如何使用 GmailApp.Sendemail?
- python - imshow() 没有正确显示图像
- jquery - 在 Bootstrap 模式 .NET Core 3.1 C# 中返回 ViewComponent