首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >挖掘“包含在”条目中而不是“等于”的术语

挖掘“包含在”条目中而不是“等于”的术语
EN

Stack Overflow用户
提问于 2021-03-13 01:24:19
回答 1查看 25关注 0票数 0

我正在做一些数据挖掘。我有一个数据库,它看起来像这样(拉出三行):

100324822$10032482$1$PS$贝尼沙坦$奥美沙坦美多美米$1$口服$UNK$Y$021286$片剂$1014687010$10146870$2$SS$贝尼卡HCT$氢氯噻嗪\奥美沙坦美多米$1$口服$1/2 40/25毫克片剂$$Y$.5$DF$薄膜包衣片$QD 115700162$11570016$5$C$Olmesartan$OLMESARTAN$1$Unknown$UNK$$$U$U$

我的代码看起来像这样:

代码语言:javascript
复制
    with open('DRUG20Q4.txt') as fileDrug20Q4:
        drugTupleList20Q4 = [tuple(map(str, i.split('$'))) for i in fileDrug20Q4]
    drug20Q4 = []
    for entryDrugPrimaryID20Q4 in drugTupleList20Q4:
        drug20Q4.append((entryDrugPrimaryID20Q4[0], entryDrugPrimaryID20Q4[3], entryDrugPrimaryID20Q4[5]))
    fileDrug20Q4.close()

    drugNameDataFrame20Q4 = pd.DataFrame(drug20Q4, columns = ['PrimaryID', 'Role', 'Drug Name']) drugNameDataFrame20Q4 = pd.DataFrame(drugNameDataFrame20Q4.loc[drugNameDataFrame20Q4['Drug Name'] == 'OLMESARTAN'])

目前,代码将只拉出具有确切名称"OLMESARTAN“的条目,我如何捕获所有的变体,例如"OLMESARTAN MEDOXOMIL”等?我不能简单地列出所有的变体,因为有无限多的变体,所以我需要一些东西来捕捉其中包含"OLMESARTAN“一词的任何东西。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-03-13 01:31:25

你可以使用str.contains来得到你想要的东西。

下面是一个示例(使用我在文档中找到的一些字符串):

代码语言:javascript
复制
import pandas as pd 
df = pd.DataFrame()
item = 'Return boolean Series or Index based on whether a given pattern or regex is contained within a string of a Series or Index.'
df['test'] = item.split(' ')
df[df['test'].str.contains('de')]

这将输出以下内容:

代码语言:javascript
复制
    test
4   Index
22  Index.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66604453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档