Pandas通过列值计算百分比

3
数据帧如下所示:
id age
a 30-40
b 30-40
c 30-40
d 40-50
e 40-50
'30-40'的计数为3,'40-50'的计数为2。 我想要的输出只是值,不关心它们的格式。 以下是输出结果:
age percentage
30-40 60.00%
40-50 40.00%
1个回答

1
使用Series.value_countsnormalize=True结合使用,然后乘以100并将格式更改为DataFrame
df1 = (df['age'].value_counts(normalize=True)
                .mul(100)
                .rename_axis('age')
                .reset_index(name='percentage'))
print (df1)
     age  percentage
0  30-40        60.0
1  40-50        40.0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接