【Python系列二】Numpy数组和List的元素查找 |
您所在的位置:网站首页 › python循环数组里的数 › 【Python系列二】Numpy数组和List的元素查找 |
《目录》 查找 Numpy 数组中满足一定条件的元素查找 Numpy 数组的最大值查找 List 中的已知元素查找 List 中的最大值 1. 查找数组中符合条件的元素索引(1) 在 Numpy 数组中查找 符合一定条件的元素的索引,可使用 np.argwhere(condition) 函数,返回值为满足条件的元素的坐标矩阵,shape 为 n*2,n 为满足条件的元素个数。具体例子见 case 1: # case 1 >>> x = np.array([[1,2,3],[4,5,6]]) >>> x array([[1, 2, 3], [4, 5, 6]]) >>> np.argwhere(x > 3) array([[1, 0], [1, 1], [1, 2]]) 2. 查找数组元素最大值在 Numpy 数组中查找最大值,可使用 np.max(arr) 和 np.argmax(arr) 函数,前者返回数组中的最大值,后者返回最大值元素的索引。另外,argmax() 可指定参数 axis = a,代表按第 a 维查找最大值。 注意:np.argmax() 获取的索引不是数组元素所在的下标位置,而是一个标量索引值。当数组为一维向量时,下标从 0 开始进行查找;当数组为多维向量时,会从最内的维度向外遍历,索引也每次加 1,类似于先把数组拉成一维向量,再求索引值。具体例子见 case 2: # case 2 >>> x = np.array([[1,2,3],[4,5,6]]) >>> x array([[1, 2, 3], [4, 5, 6]]) >>> np.max(x) # 查找数组最大值 6 >>> np.max(x, axis=0) # 查找数组每列最大值 array([4, 5, 6]) >>> np.max(x, axis=1) # 查找数组每行最大值 array([3, 6]) >>> np.argmax(x) # 最大元素的索引 5 3. 查找列表中已知元素的索引list.index(value) 可用于查找列表中指定元素的索引。其中 list 为查找目标列表,value 为要查找的值,index 函数可返回查找值在列表中的索引位置。具体例子见 case 3: # case 3 >>> a = [3, 7, 5, 4, 2] >>> a.index(4) 3 4. 查找列表元素最大值查找列表元素最大值有两种方法: 一是先对列表元素进行升序或降序排序,然后再取最后一个或第一个元素,即为列表中的最大值二是可以直接使用 max() 方法进行求取具体例子见 case 4: # case 4 >>> list = [3,1,7,4,9,6] >>> sorted(list)[-1] 9 >>> sorted(list, reverse=True)[0] 9 >>> max(list) 9 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |