1. Numpy中np.max的用法
在Numpy中,np.max函数是用于返回数组或者某个轴上的最大值。函数的常见参数如下:
numpy.max(arr,axis=None)
arr: 数组;
axis: axis用于计算最大值的轴,默认为None,返回数组的最大值。
下面通过一个简单的例子来加深理解。
import numpy as np
#定义一维数组
a = np.arange(5)
print('a:',a)
#计算a数组的最大值
print('a数组的最大值:',np.max(a))
#定义二维数组
b = np.arange(6).reshape(2,3)
print('b:',b)
#计算b数组的每一列的最大值
print('b数组每一列的最大值:',np.max(b,axis=0))
#计算b数组的每一行的最大值
print('b数组每一行的最大值:',np.max(b,axis=1))
以上代码的输出结果如下:
a: [0 1 2 3 4]
a数组的最大值: 4
b: [[0 1 2]
[3 4 5]]
b数组每一列的最大值: [3 4 5]
b数组每一行的最大值: [2 5]
通过对以上代码的分析,我们可以得出以下结论:
在未指定轴的情况下,np.max函数默认返回整个数组的最大值。
在指定轴的情况下,np.max函数返回轴上的最大值。
2. np.maximum与np.max的区别
np.maximum有点类似于np.max,它也可以计算两个数组或者标量中的最大值,但是它的使用方式与np.max有一些不同。np.maximum函数常见的形式如下:
numpy.maximum(x1,x2,*args,**kwargs)
x1,x2: x1,x2可以是数组或者标量
返回值:按元素上比较后返回最大值。
下面通过一个具体的例子来进一步了解np.maximum的使用。
import numpy as np
#定义两个数组
a = np.array([15,16,17,18,19])
b = np.array([10,12,18,21,25])
print('a:',a)
print('b:',b)
#将a中的每一个元素与b中对应位置的元素进行比较,返回最大值
c = np.maximum(a,b)
print('c:',c)
运行以上代码,我们可以得到如下的输出结果:
a: [15 16 17 18 19]
b: [10 12 18 21 25]
c: [15 16 18 21 25]
通过对以上代码的分析,可以得出以下结论:
np.maximum函数可以比较两个数组或者标量的每一个元素,返回两者对应位置上的最大值。
np.maximum函数的返回值的形状与两个输入数组的形状相同。
总结
在Numpy中,np.max和np.maximum都是计算最大值的函数,不同的是,np.max函数主要用于计算数组中的最大值,而np.maximum函数用于计算两个数组或者标量中位置上的最大值。在具体的使用中,我们需要根据自己的需求来选择使用哪个函数。