盘点一道Pandas处理多个关键词搜索的实战问题
IT共享之家
共 1084字,需浏览 3分钟
· 2022-07-10
回复“资源”即可获赠Python学习资料
大家好,我是皮皮。
一、前言
前几天在Python铂金交流群粉丝【dcpeng】问了一道Pandas
处理的问题,如下图所示。
![](https://filescdn.proginn.com/6c4e7cd27afa0b56551036f7f20db9c8/8e2a5a38380bcdde1887d272d2127917.webp)
原始数据,如下所示:
![](https://filescdn.proginn.com/cff261e7834eb472b88fac065616ea48/daade88482169959879fb18cd3bae817.webp)
他自己写了一个代码,如下所示:
def search(x):
a = dfs3.loc[dfs3['项目名称'].str.contains(x)]
return a
search('界面剂')
后来虽然确实也勉强写出来了,如下图所示:
但是希望有更好的方法!
二、实现过程
这里【月神】给了一份优化代码,如下所示:
def search(search_list: list):
search_str = f"({'|'.join(search_list)})"
return df[df['项目名称'].str.extractall(search_str).groupby(level=0)[0].nunique() >= len(search_list)]
search(['界面剂', '水泥砂浆', '刮糙'])
【月神】使用Pandas
完美地解决了粉丝的问题,简直天秀。
![](https://filescdn.proginn.com/436166035c08a2413f82d98f181abb51/2d90f6de43a30bd02804084f1267fe13.webp)
三、总结
大家好,我是皮皮。这篇文章主要盘点了一道Pandas
处理数据的问题,文中针对该问题给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。
最后感谢粉丝【dcpeng】提问,感谢【月神】给出的思路和代码解析,感谢群友们一起参与学习交流。
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。
------------------- End -------------------
往期精彩文章推荐:
![](https://filescdn.proginn.com/ff9dd3c1e22c0e7ef125b293b6d2e39e/122aabf9fc6a7604879842037b791afa.webp)
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
评论