我有一个函数,它使用fuzzyfuzzy从两列psn_name_x和psn_name_y中查找两个名称之间的Levenshtein距离比:
def fuzzMatcher(x, y):
return fuzz.token_set_ratio(x, y)
然后,我在dask数据帧上创建一个新列:
data["fuzz"] = data.map_partitions(lambda df: df.apply(lambda row: fuzzMatcher(row.psn_name_x, row.psn_name_y), axis = 1)).compute(scheduler = "processes")
生成的新列只是一个介于0和100之间的整数
这工作得很好,但这个数据集是巨大的,计算时间非常缓慢。有没有更好的方法来应用一个函数,该函数从两列中获取值,并在dask数据帧上向新列返回一个新值
目前没有回答
相关问题 更多 >
编程相关推荐