0
私は、Pythonのファジー・ライブラリを使用してファジー・マッチングを行っている、パンダ・データ・フレームの2つの列に同じような名前のセットを持っています。Pythonパンダのベクトル化関数
import pandas as pd
from fuzzywuzzy import fuzz
datt = pd.read_csv("H:\\FuzzyMatch\\data.csv")
#add column names for each library
datt['ratio'] = ""
datt['partial_ratio'] = ""
datt['partial_token_set_ratio'] = ""
datt['partial_token_sort_ratio'] = ""
datt['QRatio'] = ""
datt['token_set_ratio'] = ""
datt['token_sort_ratio'] = ""
datt['UQRatio'] = ""
datt['UWRatio'] = ""
datt['WRatio'] = ""
#save score
for i in range(datt.shape[0]):
datt.ratio.loc[i] = fuzz.ratio(datt.current_company[i],datt.crm_company_name[i])
datt.partial_ratio.loc[i] = fuzz.partial_ratio(datt.current_company[i],datt.crm_company_name[i])
datt.partial_token_set_ratio.loc[i] = fuzz.partial_token_set_ratio(datt.current_company[i],datt.crm_company_name[i])
datt.partial_token_sort_ratio.loc[i] = fuzz.partial_token_sort_ratio(datt.current_company[i],datt.crm_company_name[i])
datt.QRatio.loc[i] = fuzz.QRatio(datt.current_company[i],datt.crm_company_name[i])
datt.token_set_ratio.loc[i] = fuzz.token_set_ratio(datt.current_company[i],datt.crm_company_name[i])
datt.token_sort_ratio.loc[i] = fuzz.token_sort_ratio(datt.current_company[i],datt.crm_company_name[i])
datt.UQRatio.loc[i] = fuzz.UQRatio(datt.current_company[i],datt.crm_company_name[i])
datt.UWRatio.loc[i] = fuzz.UWRatio(datt.current_company[i],datt.crm_company_name[i])
datt.WRatio.loc[i] = fuzz.WRatio(datt.current_company[i],datt.crm_company_name[i])
私はループを回避し、関数のベクトル化された形式を使用する方法はありますか?ループ内の各関数には2つのパラメータが必要です。
ありがとうございます!