首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >熊猫系列匹配多个关键词

熊猫系列匹配多个关键词
EN

Data Science用户
提问于 2020-07-03 13:11:12
回答 1查看 210关注 0票数 1

是否有一种直接的蟒蛇熊猫方法来匹配系列的值并用字符串更新不同的系列?我找不到任何直接的方法。

这里的匹配是在由给定的一组关键字和一个强制关键字组成的系列中找到一个值。

例子:

以下是关键字表:

KW:

代码语言:javascript
复制
case,kws,mand_kw,Friendly name
1,full|name|nm|txt|dsc[0-9],full,Full Name
2,first|name|nm|txt|dsc|[0-9],first,First Name
3,last|name|nm|txt|dsc|[0-9],last,Last Name
4,legal|name|nm|txt|dsc|[0-9],legal,Legal Name
5,nick|name|nm|txt|dsc|[0-9],nick,Nick Name

DF

代码语言:javascript
复制
_id,field_name,field_friendly_name,purpose_of_use,is_included_in_report
1,FullName,,,
2,xyz,,,
3,custname,,,
4,FullNm,,,
5,FirstName,,,
6,abc,,,
7,FirstNm,,,
8,LastName,,,
9,LastNm,,,
10,LegalName,,,
11,LegalNm,,,
12,NickName,,,
13,pqr,,,
14,NickNm,,,

对于来自KW的每个kws,在DF中的field_name中查找匹配项,即它仅由kws中指定的关键字组成,而不是任何其他单词,并且强制应该有一个mand_kw关键字。

例如:

Case1:

查找所有仅由以下关键字组成的field_name,如有,则指定field_friendly_name of KW --在DF中将“全名”分配给field_friendly_name,并将is_included_in_report更新为true。如果该值不是由这些关键字构成的,则跳过。

代码语言:javascript
复制
_id,field_name,field_friendly_name,purpose_of_use,is_included_in_report
1,fullname,Full Name,,TRUE
4,fullnm,Full Name,,TRUE
8,fullname74,Full Name,,TRUE
9,fulltxt,Full Name,,TRUE
EN

回答 1

Data Science用户

发布于 2020-07-03 13:11:12

以下是我尝试过的:

代码语言:javascript
复制
import pandas 
import re

KW = pd.read_csv("regex.csv")
DF = pd.read_csv("Default-Profile.csv")

for i in range (0,KW.kws.size): 
    for j in range (0,DF.field_name.size):
            if (DF.field_name.match(r"KW.kws[i]") == True && (DF.field_name.match(r"mand_kw[i]" == True)):
                    DF.field_friendly_name[j] = KW.field_friendly_name[i]
                    DF.is_included_in_report[j] = "True"
票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/77075

复制
相关文章

相似问题

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