我有一个csv,其中包含“ KKR”映射到“ MBI”数据。我想从给定数据的用户执行查找,以从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
在这里,我已经编码为从用户输入数据中提取术语。但是它提取了“过敏”和“皮肤过敏”,而我这里只需要“皮肤过敏”。 请帮助我...