python - 如何在数据框中的第一个特定单词之后找到第二个特定单词
问题描述
我看过类似的案例,但它们并不相同。
我有一个熊猫框架。每一行都是一项研究。在一个特定的列中,我需要找出一个特定的词,即床,在另一个特定的词,即家之后出现了多少次。
我需要找出在熊猫框架中有多少案例发生这种情况。
我已经看到有关提取特定单词之后的任何文本的问题,但不是这样的情况。我假设这可能是正则表达式,但不知道该怎么做。
我创建示例数据框的代码。
import pandas as pd
raw_data = {'whereabouts': ['in bed at home', 'at home in bed',
'in school in class',
'at home in bed', 'at home in yard']
'last_name': ['James', 'Ellen', 'Alex', 'Tomas','Rick']}
df = pd.DataFrame(raw_data, columns = ['whereabouts', first_name'])
print(df)
我需要能够在行踪列中找到字符串“bed”出现在字符串“home”之后的实例数。
解决方案
你也可以试试这个:
import re
df['col'] = df.whereabouts.str.contains(r'.*home.*bed.*', flags=re.I)
输出:
whereabouts col
0 in bed at home False
1 at home in bed True
2 in school in class False
3 at home in bed True
4 at home in yard False
推荐阅读
- javascript - html验证输入时间最小值取决于其他
- sql - 查找一个字段的实例,其中另一个字段的对应值(应该是 1-1)具有多个值
- scala - 为什么 ((_: Int, _: Int) => _ / _) 当 ((_: Int) / (_: Int)) 编译时不编译?
- c - 有没有办法在同一个循环中渲染我的 Termbox 游戏和处理键盘事件?
- http - HTTP Auth 与复杂 URL
- android-studio - 为什么打开flutter项目时Android Studio中缺少LogCat和AVD Manager
- deserialization - 如何使用 Spring Cloud Stream 编写通用反序列化器?(Batch-Consumer)
- google-apps-script - 是否可以使用 Google Apps 脚本将文档另存为 epub?
- codenameone - 调查 Codename One iOS 应用程序上的 Java.Lang.NullPointerException
- android - 应用程序意外关闭 - Kotlin