使用python中的pandas求每个值占该列的比例
本文介绍了使用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屋!
查看全文