2016-11-10 12 views
1

Please see this Imageсложности при построении Пандас несколько индексированной DataFrame или серии

з = pd.DataFrame (combined_df.groupby ([ 'сессии', 'age_range', 'пола']). (Размер)) с. (25)

​      0 
session age_range gender   
Evening 0 - 17 female 31022 
        male  21754 
      18 - 24 female 79086 
        male  71563 
        unknown  75 
      25 - 29 female 29321 
        male  46125 
        unknown  44 
      30 - 34 female 21480 
        male  25803 
        unknown  33 
      35 - 44 female 17369 
        male  20335 
        unknown 121 
      45 - 54 female 8420 
        male  12385 
        unknown  24 
      55+  female 3433 
        male  9880 
        unknown 212 
Mid Night 0 - 17 female 18456 
        male  12185 
      18 - 24 female 50536 
        male  45829 
        unknown  62 

Вот как выглядит мой мультииндексированный фрейм данных. Все, что я пытаюсь сделать, - это построить данные таким образом, чтобы я мог сравнивать пользователей мужского и женского пола разных возрастных групп, активных во время разных сеансов (например, «Утро, вечер, полдень и ночь»). Например, я буду нарисовать пользователей мужского и женского пола возрастной группы 0-17, 18-24, 25-29 ... во время разных сеансов, которые у меня есть.

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

ответ

0

Я думаю, что вы можете использовать unstack с DataFrame.plot.bar:

import matplotlib.pyplot as plt 
df = combined_df.groupby(['session','age_range', 'gender']).size() 
df.unstack(fill_value=0).plot.bar() 
plt.show() 

graph

+0

Спасибо за ответ. Это решение сработало для меня. Но значение fill_value вызывает ошибку. Итак, я удалил fill_value, и он работал абсолютно нормально. Упомянув уровни, я могу углубиться в метод разложения. – vamsi465