нечеткое совпадение 2 DataFrames? - PullRequest
1 голос
/ 16 марта 2020

Существует пакет с именем fuzzy_ pandas, который может использовать levenshtein для сопоставления строк отношения. С некоторыми замечательными примерами здесь

Как этот пример:

import pandas as pd
import fuzzy_pandas as fpd

df1 = pd.DataFrame({'Key':['Apple', 'Banana', 'Orange', 'Strawberry']})
df2 = pd.DataFrame({'Key':['Aple', 'Mango', 'Orag', 'Straw', 'Bannanna', 'Berry']})

results = fpd.fuzzy_merge(df1, df2,
            left_on='Key',
            right_on='Key',
            method='levenshtein',
            threshold=0.6)

results.head()

Итак, я не знаю, возможно ли отобразить пороговое значение в результатах.

Вывод:

Key Key
0   Apple   Aple
1   Banana  Bannanna
2   Orange  Orag

И я хочу что-то вроде:

Key Key Ratio
0   Apple   Aple 0.81
1   Banana  Bannanna 0.87
2   Orange  Orag 0.78

Maybe with another library
...