gpt4 book ai didi

python - Pandas :每组过滤数据框,条件至少匹配组中的一项

转载 作者:太空宇宙 更新时间:2023-11-04 03:01:20 25 4
gpt4 key购买 nike

我有数据框

ID   url   session
111 facebook.com 1
111 vk.com 1
111 stackoverflow.com 2
222 wsj.com 3
222 ria.ru 3
222 twitter.com 4
333 wikipedia.org 5
333 rt.com 5

如果有有效的 url,我需要获取 session

valid_urls = ['rt.com', 'wsj.com']

欲望输出

ID   url   session
222 wsj.com 3
222 ria.ru 3
333 wikipedia.org 5
333 rt.com 5

我知道,我可以使用 df.url.str.contains 进行过滤,但是如何使用 session 添加条件?

最佳答案

对每个 session 使用转换以找到包含列表中一个有效 url 的 session ,然后使用生成的 bool 系列过滤掉数据帧:

df[df.groupby('session')['url'].transform(lambda x : x.isin(valid_urls).any())]

ID url session
3 222 wsj.com 3
4 222 ria.ru 3
6 333 wikipedia.org 5
7 333 rt.com 5

关于python - Pandas :每组过滤数据框,条件至少匹配组中的一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40817112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com