2024-05-01 13:15:19 发布
网友
从熊猫开始
I have two columns: A B Something Something Else Everything Evythn Someone Cat Everyone Evr1
我想计算两列之间每一行的模糊比率,因此输出如下:
A B Ratio Something Something Else 12 Everything Evythn 14 Someone Cat 10 Everyone Evr1 20
我怎样才能做到这一点?两列在同一个df中
将lambda函数与^{}一起使用:
from fuzzywuzzy import fuzz df['Ratio'] = df.apply(lambda x: fuzz.ratio(x.A, x.B), axis=1) #alternative with list comprehension #df['Ratio'] = [fuzz.ratio(a, b) for a,b in zip(df.A, df.B)] print (df) A B Ratio 0 Something Something Else 78 1 Everything Evythn 75 2 Someone Cat 0 3 Everyone Evr1 50
编辑:
如果可能,列中缺少一些值,则失败,因此添加了^{}:
print (df) A B 0 Something Something Else 1 Everything NaN 2 Someone Cat 3 Everyone Evr1 from fuzzywuzzy import fuzz df['Ratio'] = df.dropna(subset=['A', 'B']).apply(lambda x: fuzz.ratio(x.A, x.B), axis=1) print (df) A B Ratio 0 Something Something Else 78.0 1 Everything NaN NaN 2 Someone Cat 0.0 3 Everyone Evr1 50.0
将lambda函数与^{} 一起使用:
编辑:
如果可能,列中缺少一些值,则失败,因此添加了^{} :
相关问题 更多 >
编程相关推荐