Skip to main content
 首页 » 编程设计

python之将数字映射到它们的百分位数

2025年05月04日25Terrylee

我想应用 numpy.percentile 的结果到它的参数,即将输入向量中的每个数字映射到它的分位数。

例如,如果 v=np.array([1,2,3,4]),我只需要两个分位数(比中位数大和小),我会得到 np.array([0,0,1,1]) 告诉我 v 的前两个元素小于中位数,后两个元素大于中位数。

请注意,我对十分位数感兴趣,而不仅仅是中位数!

IOW,@PaulPanzer 击中要害:

np.digitize(v,np.percentile(v,quantiles)) 

谢谢!

请您参考如下方法:

(v > np.percentile(v, 50)).astype(int) 
Out[93]: 
array([0, 0, 1, 1])