このコードを使用して、グループ化された値の積み上げヒストグラムを作成しようとしています。
titanic.groupby('Survived').Age.hist(stacked=True)
しかし、積み上げ棒なしでこのヒストグラムを取得しています。
Matplotlibを直接使用したり、グループを反復処理したりせずに、ヒストグラムのバーをスタックするにはどうすればよいですか?
使用したデータセット: https://www.udacity.com/api/nodes/5454512672/supplemental_media/titanic-datacsv/download
np.histogram
を活用するカスタム関数を定義しました
ヒストグラムグループは'Survived'
のグループ内で計算されることにも注意してください
def hist(x):
h, e = np.histogram(x.dropna(), range=(0, 80))
e = e.astype(int)
return pd.Series(h, Zip(e[:-1], e[1:]))
kw = dict(stacked=True, width=1, rot=45)
titanic.groupby('Survived').Age.apply(hist).unstack(0).plot.bar(**kw)