赞
踩
python的numpy库的max()函数,用于计算沿指定轴(一个轴或多个轴)的最大值。
用法
numpy.max(a, axis=None, out=None, keepdims=<no value>, initial=<no value>, where=<no value>)
numpy.max()的入参a,为必选入参,可以为数组、列表、元组,表示需要求最大值的数据。
>>> import numpy as np
# 入参a为列表
>>> np.max([1,2,3,-1,-5])
3
# 入参a为元组
>>> np.max((1,2,3,-1,-5))
3
# 入参a为数组
>>> np.max(np.array((1,2,3,-1,-5)))
3
numpy.max()的入参axis为可选入参,默认为None,表示求整个数组的最大值。
若axis=n为整数,则对指定轴n的元素求最大值。
若axis=负数,则-1对应最后一个轴,-2倒数第2个轴,依此类推。
>>> import numpy as np >>> ar3=np.array([[[12, 13, 14, 15 ], [ 19, 25, 16, 7], [ 18, 29, 10, 31]], [[9, 11, 21, 3], [16, 17, 18, 19], [20, 21, 22, 23]]]) # axis默认为None,整个数组的最大值 >>> np.max(ar3) 31 # axis=0,沿0轴的2个二维数组的每个位置都取最大值 >>> np.max(ar3,axis=0) array([[12, 13, 21, 15], [19, 25, 18, 19], [20, 29, 22, 31]]) # axis=1,沿1轴的一维数组的每个位置都取最大值 >>> np.max(ar3,axis=1) array([[19, 29, 16, 31], [20, 21, 22, 23]]) # axis=2,沿2轴的每个位置都取最大值 >>> np.max(ar3,axis=2) array([[15, 25, 31], [21, 19, 23]]) # 若axis=负数,则-1对应最后一个轴,-2倒数第2个轴,依此类推。 >>> np.max(ar3,axis=-1) array([[15, 25, 31], [21, 19, 23]])
numpy.max()的入参axis若为轴的元组,则对多个轴求最大值。
axis=(m,n) 先沿m轴取最小值,再沿n轴取最大值
axis=(m,n)等效于axis=(n,m)。
>>> import numpy as np >>> ar3=np.array([[[12, 13, 14, 15 ], [ 19, 25, 16, 7], [ 18, 29, 10, 31]], [[9, 11, 21, 3], [16, 17, 18, 19], [20, 21, 22, 23]]]) >>> ar3 array([[[12, 13, 14, 15], [19, 25, 16, 7], [18, 29, 10, 31]], [[ 9, 11, 21, 3], [16, 17, 18, 19], [20, 21, 22, 23]]]) # axis=(m,n)先沿m轴取最大值,再沿n轴取最大值 >>> np.max(ar3,axis=(0,1)) array([20, 29, 22, 31]) # axis=(m,n)等于# axis=(n,m) >>> np.max(ar3,axis=(1,0)) array([20, 29, 22, 31]) >>> np.max(ar3,axis=(0,2)) array([21, 25, 31]) >>> np.max(ar3,axis=(1,2)) array([31, 23])
numpy.max()的入参initial为可选入参,表示用initial替换输出元素中小于initial的值。
>>> import numpy as np >>> ar3=np.array([[[12, 13, 14, 15 ], [ 19, 25, 16, 7], [ 18, 29, 10, 31]], [[9, 11, 21, 3], [16, 17, 18, 19], [20, 21, 22, 23]]]) >>> ar3 array([[[12, 13, 14, 15], [19, 25, 16, 7], [18, 29, 10, 31]], [[ 9, 11, 21, 3], [16, 17, 18, 19], [20, 21, 22, 23]]]) # 输出小于initial,则替换为initial,否则不变 >>> np.max(ar3,axis=(0,1)) array([20, 29, 22, 31]) >>> np.max(ar3,axis=(0,1),initial=19) array([20, 29, 22, 31]) >>> np.max(ar3,axis=(0,1),initial=33) array([33, 33, 33, 33]) >>> np.max(ar3,axis=(0,1),initial=23) array([23, 29, 23, 31])
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。