1. np.percentile 排序后计算数组中任意百分比的数
用法:np.percentile(a, q, axis=None, out=None, overwrite_input=False, interpolation='linear', keepdims=False)
返回:将数组a按从小到大排序,后计算q分位数
如:
import numpy as np
a = np.random.randint(1,10, 10)
print(a)
t = np.percentile(a,90)
print(t)
a = [5 2 3 6 1 6 7 6 7 4]
排序之后a=[1 2 3 4 5 6 6 6 7 7],90%分位数为7
因此,t = 7.0
参考:https://blog.csdn.net/brucewong0516/article/details/80205422
2. np.clip 截取数组中数据范围
用法:np.clip(a, a_min, a_max, out=None)
返回:将数组a中所有的数据,限定在(a_min,a_max)范围内,即数组a中小于a_min的数,强制转换为a_min;大于a_max的数,强制转换为a_max。
其中a_min和a_max, 可以为一个和a一样大小的数组(列表也可以,只要是类似数组的结构就是可行的),数组中相应位置的元素进行比较。
out为可选项,将强制转换后的数组放入out中,out的size必须和数组a相同
如:
import numpy as np
a = np.random.randint(1,10, 10)
print(a)
b = np.clip(a, 3,5)
print(b)
a = [4 6 4 6 9 9 3 1 5 9]
b = [4 5 4 5 5 5 3 3 5 5] 小于3的值变成3,大于5的值变成5