pandas:重塑堆积条形图的数据帧

时间:2017-04-25 20:40:00

标签: pandas matplotlib

我有一个像这样的数据框

          meaning           label  \
0         hypertension      0   
1         angina            5   
2         angina            9   
  percentFeatureInCluster  percentFeatureInPop  
0               33.781654            30.618880  
1               24.916958             3.768201  
2                4.663107             3.768201 

我试图按意义进行分组,得到一个堆积条形图,其中每个含义的条数与每组中的行数一样多,另外一个为percentFeatureInPop。

即这将是我正在寻找的DataFrame,我可以轻松地将其输入plot.bar(stacked = True)并获取我正在寻找的情节。

     meaning  percentFeatureInCluster0   percentFeatureInCluster5 
hypertension                 33.781654                          0
angina                               0                  24.916958

percentFeatureInCluster9     percentFeatureInPop
                       0               30.618880
                4.663107                3.768201  

如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

pre = 'percentFeatureInCluster'
d1 = df.set_index(['meaning', 'label'])[pre].unstack(fill_value=0).add_prefix(pre)
d1.plot.bar(stacked=True, figsize=[10, 4])

enter image description here