使用するデータ
import pandas as pd df = pd.DataFrame({ 'Class': ['A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'], 'Answer': ['Yes', 'No', 'No', 'No', 'Yes', 'Yes', 'Yes', 'Yes'] }) df
積み上げ棒グラフの場合
Class別のAnswerの内訳を取得
grouped_df = df.groupby('Class')['Answer'].value_counts().unstack() grouped_df
描画
grouped_df.plot(kind='barh', stacked=True) plt.show()
100%積み上げ棒グラフの場合
Class別のAnswerの内訳を取得
grouped_df2 = df.groupby('Class')['Answer'].value_counts(normalize=True).unstack() grouped_df2
描画
grouped_df2.plot(kind='barh', stacked=True) plt.xlim(0, 1) plt.show()