#python #pivot #range
#python #сводная #диапазон
Вопрос:
Моя таблица включает возраст клиентов (столбец «возраст») и категорию продуктов, которые покупают клиенты (столбец «категория»)
Я хотел бы создать сводную таблицу с категорией в зависимости от возраста.
Следующий код работает нормально :
Python
- X = "categ"
- Y= "age"
- cont = table_pct[[X,Y]].pivot_table(index=X,columns=Y,aggfunc=len,margins=True,margins_name="Total")
- cont
Однако, поскольку существует слишком много разных возрастов, я хотел бы сделать то же самое для диапазонов возрастов вместо возрастов.
Итак, я создал диапазоны возрастов :
- table_pct['tranche_age']=pd.cut(table_pct.age, range(10, 110, 6), right=False)
- table_pct.head(10)
Но мой первый код не работает для диапазонов возрастов :
- X = "categ"
- Y= "tranche_age"
- cont = table_pct[[X,Y]].pivot_table(index=X,columns=Y,aggfunc=len,margins=True,margins_name="Total")
cont
Я сталкиваюсь со следующей ошибкой: TypeError: не удается вставить элемент в CategoricalIndex, который еще не является существующей категорией
Спасибо за вашу помощь!