python - 如何过滤掉包含某些字符串的“set”类型值的pandas df行?
问题描述
我有一些数据框包含一列,其中的值是“set”类型的。
我还有一个单词列表,我希望在这些集合中搜索并删除包含列表命中的行
例如 df 结构
id types
123 {'Editorial', "Research Support, Non-U.S. Gov't", 'Comment'}
234 {'Comparative Study', 'Journal Article', "Research Support,'Research Support, N.I.H., Extramural'}
这是我要删除的值列表
list_to_drop=['Editorial','Comment']
在这个例子中,我希望删除第一行
谢谢!
解决方案
将以下代码与apply
and一起使用difference
:
df['types'] = df['types'].apply(lambda x: x.difference(list_to_drop))
推荐阅读
- sql - 处于还原模式的 SQL 数据库
- c# - uwp中的按钮在我启动时不显示
- c++ - 新的 VS C++ 更新使 boost forward 声明的代码不可编译!你能做什么?
- c++ - 使用 C++ 的 N-Queens 算法
- c# - Windows 窗体应用程序不会在启动时运行,但会手动运行
- asp.net-core-mvc - OnModelCreating 中的环境检查
- c++ - MySQL 连接器/C++:从全局构造调用时 get_driver_instance() 崩溃
- javascript - React 属性分布列表
- c# - 在服务器 C# 上将客户端字符串转换为数组
- ios - 使用 Alamofire 和 SwiftyJson 将 JSON 值附加到全局数组