我有一个这样的数据框:
quantity fruit
---------------------
1 apple
1 apple
0 apple
1 orange
我想group by
所有水果并绘制数量为1的总百分比图。
例如,苹果将具有2/3 = 66.67%,橙色将具有1/3 = 33.33%
因此,我想在x轴上绘制 fruit ,在y轴上绘制%的图形。
答案 0 :(得分:1)
尝试以下操作:
pd.concat([dataframe, colum-you-want-to-group-by], axis=1).groupby('name-of the-column').name-of-the-column.mean().plot(kind='barh').set_xlabel('% TEXT')
如果您已从数据框中拆分了列,并且不只是像这样省略了concat
,则上面的说法是正确的:
name-of-your-dataframe.groupby('name-of the-column').name-of-the-column.mean().plot(kind='barh').set_xlabel('% TEXT')
答案 1 :(得分:1)
我能够做到这一点,并获得想要的预期结果。检查一下。
{{1,2}, {3,20}, {40,5}, {3,2}}