如何为Pandas计算的百分比结果添加百分号%?
解决方法
你可以通过以下几种方式给计算出的百分比数值添加%符号,同时去掉多余的.0:
方法1:使用
apply结合字符串格式化
先完成百分比计算取整,再通过apply遍历每个元素,将浮点数转为整数后拼接%符号:percent_series = round((df.value_counts('label')/df.value_counts('label').sum()) * 100).apply(lambda x: f"{int(x)}%")方法2:使用
map方法格式化
用map替代apply,实现相同的格式化效果,代码更简洁:percent_series = round((df.value_counts('label')/df.value_counts('label').sum()) * 100).map(lambda x: f"{int(x)}%")方法3:直接通过格式化字符串去除小数位
不需要转整数,利用格式化字符串的.0f参数直接保留0位小数并添加%:percent_series = round((df.value_counts('label')/df.value_counts('label').sum()) * 100).map(lambda x: f"{x:.0f}%")
执行上述任意一种方法后,你会得到如下结果:
label retained 82% churned 18% dtype: object
内容的提问来源于stack exchange,提问作者tonygo23
相关产品推荐
相关产品推荐

