给定一个值,用Numpy查找百分位%

时间:2018-07-30 14:47:25

标签: python numpy

可能有更好的词来描述这个问题,但是我想做的是与np.percentile()相反。我有一个由n个数字组成的列表,我想看看其中的百分之几小于给定值。现在,我获得此值的方法是不断尝试不同的小数。 我想要的 numpy告诉我的是:

  

给定阈值= 0.20(输入),列表d中的项目中约99.847781%(输出)低于此百分比。

我现在要做的事很粗略:

>>> np.percentile(np.absolute(d), 99.847781)
0.19999962082827874

>>> np.percentile(np.absolute(d), 99.8477816)
0.19999989822334402

>>> np.percentile(np.absolute(d), 99.8477817)
0.19999994445584851

>>> np.percentile(np.absolute(d), 99.8477818)
0.19999999068835939
...

1 个答案:

答案 0 :(得分:2)

如果我正确理解了您的问题,类似

sum(d < threshold) / len(d)

应该这样做。

编辑:我错过了问题的绝对价值-

sum(np.abs(d) < threshold) / float(len(d))