如何 return 来自数据框的最常见名称?

How to return most common name from dataframe?

我正在使用 fuzzywuzzy 对两个数据帧进行模糊匹配。我将截止分数设置为 75,使用 process.extractOne 获得最高匹配。

只要未进行匹配,该行的值为 'None'。

如何将 'None' 替换为最常用的名称?

from fuzzywuzzy import process

df1['Matched_Nickname_and_Score'] = df1['FNAME'].apply(lambda x: 
process.extractOne(x, df2['NICKNAME'].tolist(), score_cutoff = 75))

我有办法找到每一行的最大值,但不确定从这里去哪里

maxValuesObj = df1.max(axis = 1)

以下内容可能会有所帮助:

df1['Matched_Nickname_and_Score'] = df1['Matched_Nickname_and_Score'].fillna(value=df1.FNAME.mode().values[0])

df1.FNAME.mode().values[0] 将从 df1 数据框的 FNAME 列中获取最常见的名称。你只需要使用 fillna 和那个值,你就会得到你要找的东西。