Numpy常用函数
求取精度
np.around([-0.6,1.2798,2.357,9.67,13], decimals=0)#取指定位置的精度
'''
array([-1., 1., 2., 10., 13.])
'''
看到没,负数进位取绝对值大的!
np.around([1.2798,2.357,9.67,13], decimals=1)
'''
array([ 1.3, 2.4, 9.7, 13. ])
'''
np.around([1.2798,2.357,9.67,13], decimals=2)
'''
array([ 1.28, 2.36, 9.67, 13. ])
'''
从上面可以看出,decimals表示指定保留有效数的位数,当超过5就会进位(此时包含5)!
但是,如果这个参数设置为负数,又表示什么?
np.around([1,2,5,6,56], decimals=-1)
'''
array([ 0, 0, 0, 10, 60])
'''
发现没,当超过5时候(不包含5),才会进位!-1表示看一位数进位即可,那么如果改为-2呢,那就得看两位!
np.around([1,2,5,50,56,190], decimals=-2)
'''
array([ 0, 0, 0, 0, 100, 200])
'''
看到没,必须看两位,超过50才会进位,190的话,就看后面两位,后两位90超过50,进位,那么为200!
取整
np.floor([-0.6,-1.4,-0.1,-1.8,0,1.4,1.7])
'''
array([-1., -2., -1., -2., 0., 1., 1.])
'''
取上限
取上限!找这个小数的最大整数即可!
np.ceil([1.2,1.5,1.8,2.1,2.0,-0.5,-0.6,-0.3])
'''
array([ 2., 2., 2., 3., 2., -0., -0., -0.])
'''
查找
利用np.where实现小于0的值用0填充吗,大于0的数不变!
x = np.array([[1, 0],
[2, -2],
[-2, 1]])
print(x)
'''
[[ 1 0]
[ 2 -2]
[-2 1]]
'''
np.where(x>0,x,0)
'''
array([[1, 0],
[2, 0],
[0, 1]])
'''