我有一个数据集df,看起来像这样:
houses price
ranch 300,000
ranch 350,000
ranch 400,000
condo 250,000
condo 275,000
townhome 300,000
我想对“房屋”列中的不同类别进行分组,并显示每个类别的百分比
所需的输出
houses percent
ranch 50%
condo 33%
townhome 16.60%
这就是我在做什么:
percent is part/whole
df1 = df.groupby['houses'].sum() #df1 gives us the sum
percent = df1.['houses']/df1
但是,我并没有保留列式房屋和百分比的任何建议。
您可以使用value_counts
并使用normalize
参数来计算唯一值:
df['houses'].value_counts(normalize=True) * 100
ranch 50.000000
condo 33.333333
townhome 16.666667
Name: houses, dtype: float64
编辑:转换为DataFrame:
(df['houses'].value_counts(normalize=True) * 100).to_frame()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句