我使用模糊wuzzy来比较两个不同数据帧中的两列。我想在df2中的同一行但不同的列中检索相应的值。例如:
如果我在df1列A中的匹配率超过50与df2列A,我想在df2列B中检索相应的值。
我目前的代码:
import pandas as pd
import numpy as np
from fuzzywuzzy import fuzz
from fuzzywuzzy import process
df1=pd.read_csv('C:\\Users\\nkurdob\\Desktop\\Sheet1.csv')
df2=pd.read_csv('C:\\Users\\nkurdob\\Desktop\\Sheet2.csv')
for i in range(len(df1)):
em = df1['A'][i]
test = fuzz.partial_ratio(em, df2['A'])
while test > 50:
print df1['Fund Name'][i]==df2['B']
这是一个永无止境的输出 - 我必须每次都停止它。有没有人知道如何根据某个匹配率检索df2中的相应行?
由于 纳扎尔
答案 0 :(得分:1)
将while
替换为if
您已经运行了partial_ratio函数并获得了名为test
的静态结果。如果是> 50它将永远是>代码中那部分导致无限循环。