2016-10-30 34 views
1
a 0 0 0 0 1 
a 0 0 0 1 1 
a 1 0 0 1 1 
b 1 0 0 1 1 
c 0 0 1 1 1 
c 1 0 0 0 0 
c 0 1 0 0 0 

私は上記のようなパンダのデータフレームを使用している場合、どのように私は、a、b及びcによってデータをグループ化し、各列の合計/カウント数をプロットについては行くことができますか?パンダGROUPBYのbarplot

理想的には、私はバーチャルに3つのグループを持ち、それぞれに5つのバーがそのグループのその列の合計/カウントを表します。

答えて

1

データフレームでgroupbyメソッドを使用して、データフレームgroupbyオブジェクトを作成するとします。 groupbyオブジェクトでsumを呼び出すと、元のデータフレームのピボットである新しいデータフレームが作成されます。そこからplotに電話して、棒グラフを作成することができます。

import pandas as pd 

d = {'type': ['a','a','a','b','c','c','c'], 
    'v1': [0,0,1,1,0,1,0], 
    'v2': [0,0,0,0,0,0,1], 
    'v3': [0,0,0,0,1,0,0], 
    'v4': [0,1,1,1,1,0,0], 
    'v5': [1,1,1,1,1,0,0]} 

df = pd.DataFrame(d) 
gb_sum = df.groupby('type').sum() 
gb_sum.plot(kind='bar') 

enter image description here