使用查找比较数据,并使用python仅输出数据中最长的短语?

问题描述 投票:0回答:1

我有一个包含“ KKR”映射到“ MBI”数据的csv。我想从给定数据的用户中执行查找,以从KKR中提取最长的匹配短语(如果包含长短语的单词,则忽略小短语)

#os.chdir("kkr_lookup")
data = pd.read_csv("KKR_MBI_MAP.csv")

dfData = pd.DataFrame(data)

dfVerbatim = pd.DataFrame()

dataVerbatim = {'verbatim': ['She experienced skin allergy and hair loss after using it for 2-3 weeks']}
dfVerbatim = pd.DataFrame(dataVerbatim, columns = ['verbatim'])


for index, frame in dfData.iterrows():
    if pd.notnull(frame['KKR']) & dfVerbatim['verbatim'].str.contains(frame['KKR'], case=False).bool() :
        k=(frame['MBI']).lower()
        l=(frame['KKR']).lower()
        print("MBI:",l)
        #print("MBI:",k)

代码给出的输出为:

allergy
hair loss
skin allergy

但是我需要作为:

skin allergy
hair loss

这里我已编码为从用户输入数据中提取术语。但是它提取了“过敏”和“皮肤过敏”,而我这里只需要“皮肤过敏”。请帮助我...

python pattern-matching lookup string-matching
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.