2016-11-10 55 views
1

Please see this Image难度在绘制熊猫多索引数据帧或一系列

S = 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

我认为你可以使用unstackDataFrame.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