使用与此类似的功能:
def percentage(part, whole):
return 100 * float(part)/float(whole)
我可以获得调用函数的百分比:
percentage(215,413)
但是我如何选择bool系列并获得真假的百分比?
s = pd.Series(np.random.randn(5) +5)
s > 5
0 True
1 False
2 False
3 True
4 True
dtype: bool
所需输出是系列中True值的百分比(上例中为60%)。我需要map
函数来获取输出吗?请告诉我最好的方法。感谢
答案 0 :(得分:0)
只需计算布尔熊猫系列的均值。由于True映射为1,而False映射为0,因此您只需通过计算均值就可以得出百分比。
import pandas as pd, numpy as np
s = pd.Series(np.random.randn(5) +5)
(s > 5).mean()
0.59999999999999998
答案 1 :(得分:0)
内置的Series运算符是另一种方便的方法:
s.gt(5).mean()