还是老流程,第一步先导入numpy,以及创建一个array。
import numpy as np
lst=[[1,2,3,4],[5,6,7,8],[1,3,9,4]]
data=np.array(lst)
输入:
np.max(data)
结果是:
9
这个很好理解,用max找寻array里面最大的元素是多少。
np.max(data,axis=1)
结果是:
array([4, 8, 9])
我们加入axis(轴),并且把轴的值设置成1的时候,那么我们输出的就是每一行最大的那个值是多少。
如果我们把axis设置成0以后,我们的结果就会变成求每一列最大值:
np.max(data,axis=0)
结果是:
array([5, 6, 9, 8])
和sort一样,max也有一个argmax,作用如下:
np.argmax(data,axis=1)
结果是:
array([3, 3, 2], dtype=int64)
用argmax以后我们将轴调成1,结果就是每一行最大值所在的位置。
那么如果把轴变成0,结果输出的就是每一列最大值的位置:
np.argmax(data,axis=0)
结果是:
array([1, 1, 2, 1], dtype=int64)
如果我们不设置轴,光输入argmax,那么我们就会输出所有元素中最大值的位置:
np.argmax(data)
结果是:
10
最后我们要讲的是条件查找:
np.where(data>6)
结果是:
(array([1, 1, 2], dtype=int64), array([2, 3, 2], dtype=int64))
我们这里设置的条件是大于6的数,因此我们出来的结果也是大于6的数的位置。但是这里输出出来的结果要上下结合着看,比如第一个array里面第一个数是1,那么意思就是在第一行,第二个array第一个数是2,那么意思就是在第二列,这里要注意,无论是第一行还是第一列都是从0开始的。因此,第一行第二列的数字就是7,以此类推,第一行第三列的数字是8。第二行第二列的数字是9。
领取专属 10元无门槛券
私享最新 技术干货