Numpy库提供了两个方法:numpy.max()
和numpy.where()
用于numpy.ndarray
类型的最大值求解以及某一元素位置序号的查找。具体用法如下:
设Name为一numpy.ndarray
类型的数组,则numpy.max(Name)
返回Name中值最大的元素(可以是无符号类型或者有符号类型)
import numpy
x = numpy.arange(0, 5, 0.5)
xx = numpy.array([x, x+1, x+2, x+3, x+4])
numpy.max(xx) # 8.5
如果要知道最大的元素在x中的位置,可以使用numpy.where()
方法:
numpy.where(xx == np.max(xx))
返回一个tuple,其中包含n
个元素,n
是xx
的维数。
也即,如果xx
是一个二维数组,则numpy.where
的返回值是一个包含两个元素的tuple,每一个元素都是一个numpy.ndarray
类型的数组,其中包含了最大值的序号。
xx[index[0]][index[1]]
即为xx
中最大的元素。