python - 如何搜索 df 列中是否存在特定字符串?
问题描述
我有一个包含多种类型的电影数据框 - 例如第 1 列和一些与情节相关的关键字 - 例如第 2 列。我想要做的是获取一个新数据框,其中仅包含与特定类型相关的条目,例如'科幻'。我遇到的问题是一些条目是多类型的,例如“恐怖、科幻、惊悚”。
这是我尝试过的:
df[(df == 'Sci-fi').any(axis=1)]
这只会给我在第 1 列中有一种类型的条目。它不会给我任何包含“科幻”和另一种类型的条目。如何让我的 df 显示包含“科幻”类型的多类型条目?
解决方案
df = pd.DataFrame({'Column1': ['Horror, Sci-fi, Thriller', 'Horror, Thriller', 'Sci-fi'], 'Column2': [1, 2, 3]})
print(df[df['Column1'].str.extract('(Sci-fi)', expand=False).notna()])
输出:
Column1 Column2
0 Horror, Sci-fi, Thriller 1
2 Sci-fi 3
推荐阅读
- angular - Ionic Native Contacts 问题显示每个数字
- angular - Angular / Electron 未启动
- session-cookies - 如何设置内容安全策略以发布跨站点 cookie
- python - 为什么我不能使用三个 if 语句而不是一个 if 语句和两个 elif 语句?
- json - 如何使用 JSON 解码字典值中的自定义类型?
- javascript - jQuery折叠,一次显示一个
- mysql - 在 MySQL 中显示一次相同的数据
- python - 连接到excel时使用Pandas将CSV数据转换为数字
- javascript - 展开一个 div 元素 onClick 总是展开同一个 div 元素
- python - 如何打印列表中元素的索引 - python