regex - 查找关键字+1并创建新列
问题描述
目标:
1)定位关键字旁边的单词(例如brca
)
2)用这个词创建一个新列
背景:
1)我有一个列表l
,我在其中制作了一个数据框并使用以下代码df
从中提取单词:brca
l = ['carcinoma brca positive completion mastectomy',
'clinical brca gene mutation',
'carcinoma brca positive chemotherapy']
df = pd.DataFrame(l, columns=['Text'])
df['Gene'] = df['Text'].str.extract(r"(brca)")
输出:
Text Gene
0 breast invasive lobular carcinoma brca positiv... brca
1 clinical history brca gene mutation . gross de... brca
2 left breast invasive ductal carcinoma brca pos... brca
问题:
但是,我现在正试图在brca
每一行的单词旁边找到单词并创建一个新列。
期望的输出:
Text Gene NextWord
0 breast invasive lobular carcinoma brca positiv... brca positive
1 clinical history brca gene mutation . gross de... brca gene
2 left breast invasive ductal carcinoma brca pos... brca positive
我在上下文中查看了 python pandas 数据框单词:get 3 words before and after and PANDAS 在一列字符串中找到确切的单词和之前的单词,并将该新列附加到 python (pandas) 列中,但它们对我不太有用。
问题:
我如何实现我的目标?
解决方案
利用:
import pandas as pd
l = ['carcinoma brca positive completion mastectomy',
'clinical brca gene mutation',
'carcinoma brca positive chemotherapy']
df = pd.DataFrame(l, columns=['Text'])
df['NextWord'] = df['Text'].str.extract(r"(?<=brca)(.+?) ")
print(df)
输出:
Text NextWord
0 carcinoma brca positive completion mastectomy positive
1 clinical brca gene mutation gene
2 carcinoma brca positive chemotherapy positive
推荐阅读
- visual-studio-code - 盘点多台计算机上的 VS 代码扩展?
- javascript - 在 forEach 循环中添加的事件侦听器在单击同一页面上的另一个按钮后不会被保留
- javascript - 正则表达式最多 4 位数字和/或最多 4 位小数
- r - 从预定义名称列表中对列进行排序,并忽略列表中不存在的列名称
- azure-aks - 如何获取 AKS 日志
- python - 从由分隔符分割的两个熊猫系列创建字典
- text - 删除 Microsoft Word 中每一行的前 N 个字符
- java - 活动未附加到 Windows 管理器
- google-sheets - Google表格:如何按工作表名称链接到工作簿中的另一个工作表
- excel - VBA脚本仅编辑粘贴在当前工作簿现有数据下方的另一个工作簿中的新数据行