df_plot = df.groupby(['class', 'survived']).size().reset_index().pivot(columns='class', index='survived', values=0) class First Second Third survived 0 80 97 372 1 136 87 119