使用python中的pandas求每个值占该列的比例

查看:7165
本文介绍了使用python中的pandas求每个值占该列的比例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

比如我有个dataframe叫df

   Prices  Amount Action  C
0       3      57   Sell  1
1      89      42   Sell  1
2      45      70    Buy -1
3       6      43   Sell  1
4      60      47   Sell  1
5      19      16    Buy -1
6      56      89   Sell  1
7       3      28    Buy -1
8      56      69   Sell  1
9      90      49    Buy -1

目前使用的办法是

df['Prices'].apply(lambda x :x/df['Prices'].sum())

感觉特别慢,有什么更快的办法吗?

解决方案

sum()写在lambda表达式外面,否则每次计算一个x占该列的比例时,又需要重新计算sum(),浪费了大量时间.

这篇关于使用python中的pandas求每个值占该列的比例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆