Эффективный метод для хранения переменных в Python - PullRequest
0 голосов
/ 02 октября 2018

Все,

Я новичок в Python и пытаюсь распределить данные по бинам.

Предположим, у меня есть 2 столбца Возраст и покупка.Возраст - это непрерывная переменная, а Покупка - это двоичная переменная (1-Да, 0-Нет).Я хочу классифицировать возраст по бинам и видеть общее количество покупок в каждой корзине.

Я написал следующий код, но я искренне верю, что есть гораздо более эффективный способ сделать это.Пожалуйста, проверьте следующее и предложите новые методы или улучшения.

Код:

bins = [15, 30, 40, 50, 60, np.inf]

names = ['15-30', '30-40', '40-50', '50-60', '60+']

dataset['AgeRange'] = pd.cut(dataset['Age'], bins, labels=names)

df = [ dataset[dataset.AgeRange == '15-30'].Purchased.sum(), 
   dataset[dataset.AgeRange == '30-40'].Purchased.sum(),
   dataset[dataset.AgeRange == '40-50'].Purchased.sum(),
   dataset[dataset.AgeRange == '50-60'].Purchased.sum() ]

Спасибо !!!

1 Ответ

0 голосов
/ 02 октября 2018

Вы должны посмотреть на DataFrame.groupby.Также рассмотрите возможность использования списков для создания своих ярлыков:

bins = [15, 30, 40, 50, 60, np.inf]
labels = [f'{i}+' if j==np.inf else f'{i}-{j}' for i, j in zip(bins, bins[1:])]

dataset['AgeRange'] = pd.cut(dataset['Age'], bins, labels)
dataset.groupby('AgeRange')['Purchased'].sum()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...