我在所有行中都有一个特殊的列列表。从目标lis中选择至少不包含一个元素的行

2024-03-30 05:18:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数据帧,其中的行包含列表(让我们调用B) 我有一个目标清单(让我们称之为目标清单)。我想存储所有的行,这些行在B和A中至少没有一个公共元素

A = [
'IAB24',
'IAB9-WS1',
'IAB9-WS2',
'IAB26-WS1',
'IAB9-9',
'IAB14-WS1',
'IAB14-1',
'IAB19-15',
'IAB25-5',
'IAB25-2',
'IAB19-WS2',
'IAB26',
'IAB25-3',
'IAB7-39']

下面是B数据帧:

URL          Category
google.com  [IAB19, Technology & Computing, 0.878928848558...
youtube.com [IAB25, Non-Standard Content, 0.99999999988656...
facebook.co [IAB14, Society, 0.974491504626058713, IAB14-W...
amazon.com  [IAB22, Shopping, 0.732955918165917875]
wpedia.org  [IAB5, Education, 1.000000000000000000]

我想检查A中的任何代码是否不在B['Category']中,然后我想将它们存储在一个名为C的新数据帧中


Tags: 数据com元素目标列表categoryws1ws2
1条回答
网友
1楼 · 发布于 2024-03-30 05:18:17

可以使用“设置交点”。我们要找出相交点为空集的行。你知道吗

df[[not(bool(set(A) & set(x))) for x in df.Category]]

更直接一点:

df[[len(set(A) & set(x)) == 0 for x in df.Category]]

相关问题 更多 >