Постоянно нахожу что-то новое. Не было, не было и вот опять
Я вот
тут показывала как я делю на группы в столбце с помощью np.where() и loc.
Допустим есть датафрейм по выручке
df = pd.DataFrame({'Name': ['client_1', 'client_2', 'client_3', 'client_4','client_5'],
'Revenue': [500, 1000, 800, 3000, 2500]})
📍Мне нужен создать столбец, основываясь на данных столбца Revenue:
Разобьем выручку на следующие группы. Обычно я использую атрибут loc[]. Мне так удобнее.
df.loc[df.Revenue <1000, 'Group'] = '<1000'
df.loc[(df.Revenue >=1000)&(df.Revenue <2000), 'Group'] = '1000-2000'
df.loc[df.Revenue >=2000, 'Group'] = '>=2000'

А теперь попробуем
сделать это с помощью
биннинга! Есть функция cut
Вот так можно разбить на несколько тех же групп
df['Group2']=pd.cut(df['Revenue'],bins=[0,999,2000,np.inf],labels=['<1000','1000-2000', '>=2000'])
Я прям теперь даже не знаю, что мне больше нравится. Тяжело когда такой богатый выбор
Обсуждение 7
Обсуждение не доступно в веб-версии. Чтобы написать комментарий, перейдите в приложение Telegram.
Обсудить в Telegram