如何将计数为 1 的所有列重命名为 'others'
How to rename all columns with count 1 as 'others'
我正在按流派对电影进行分类。 (动作冒险科幻、惊悚恐怖动作……)等等。我得到 200 类,其中 50 类 在我分组时只有一个值。我想按值重命名这些行中的每一行(或每行 occurence=1)并将它们重命名为 'Other' 以便其他计数现在为 50
请指教代码。
数据框是 df,列名是 genre
谢谢
您可以计算频率并使用 np.where
替换如下:
# compute the frequency:
counts = df.groupby('genre').transform('size')
# maps:
df['new_genre'] = np.where(counts > 1, df['genre'], 'Other')
我正在按流派对电影进行分类。 (动作冒险科幻、惊悚恐怖动作……)等等。我得到 200 类,其中 50 类 在我分组时只有一个值。我想按值重命名这些行中的每一行(或每行 occurence=1)并将它们重命名为 'Other' 以便其他计数现在为 50
请指教代码。
数据框是 df,列名是 genre
谢谢
您可以计算频率并使用 np.where
替换如下:
# compute the frequency:
counts = df.groupby('genre').transform('size')
# maps:
df['new_genre'] = np.where(counts > 1, df['genre'], 'Other')