У меня большой Dataframe с> 3000 метками категорий. Я хотел бы выборочно перекодировать метки на основе количества групп. Это похоже на условную замену в Excel. Например:
ID Label
1 cat
2 dog
3 cat
4 cat
5 dog
6 bird
количество каждого:
cat: 3
dog: 2
bird: 1
логика: если count <= 2, то поменяйте метку на 'other' </p>
ID Label
1 cat
2 other
3 cat
4 cat
5 other
6 other
количество каждого:
cat: 3
other: 3
Возможно, некоторые из вас знают более питонский способ сделать то же самое. может быть, таинственная лямбда-функция может помочь ...
уже прочитал кучу постов здесь, как обычно.
Мой скудный код Python выглядит так:
df['Label'] = df.groupby('Label')['Label'].transform('count')
df['New_Label'] = np.where(df.label <= 2, 'other', df.label)