numpy.argmin
https://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.argmin.html
numpy.argmin(a, axis=None, out=None)[source]
给出axis方向最小值的下表
| Parameters: |
a : Input array. axis : 默认将输入数组展平。否则,按照axis方向 out : 可选 |
|---|---|
| Returns: |
index_array : 下标组成的数组。shape与输入数组a去掉axis的维度相同。 |
举例:
1、展平、axis=0、axis=1
|
1
2
3
4
5
6
7
8
9
10
|
>>> a = np.arange(6).reshape(2,3)>>> aarray([[0, 1, 2], [3, 4, 5]])>>> np.argmin(a)0>>> np.argmin(a, axis=0)array([0, 0, 0])>>> np.argmin(a, axis=1)array([0, 0]) |
2、多个最小值,只显示第一个
|
1
2
3
4
5
6
|
>>> b = np.arange(6)>>> b[4] = 0>>> barray([0, 1, 2, 3, 0, 5])>>> np.argmin(b) # Only the first occurrence is returned.0 |
=============================
若寻找一个列表的最大(小)值及其对应的索引:
|
1
2
3
4
|
list = [9, 12, 88, 14, 25]max_index = max(list) # 最大值的索引max_value = list.index(max(list)) # 返回最大值# 最小的话 max换成min |
若是numpy中arrary的类型:
|
1
2
3
4
5
|
a= np.array([9, 12, 88, 14, 25])list_a = a.tolist() list_a_max_list = max(list_a) #返回最大值max_index = list_a.index(max(list_a)) # 返回最大值的索引 |
-
min/max是python内置的函数
-
np.argmin/np.argmax是numpy库中的成员函数
(可适合处理numpy.ndarray对象,可选的参数是axis=0或者1)
|
1
|
# 按每列求出最小值的索引 axis=0 |
|
1
|
# 按每行求出最小值的索引 axis=1 |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
import numpy as np a = np.array([1, 2, 3, 4])b = np.array((5, 6, 7, 8))c = np.array([[11, 2, 8, 4], [4, 52, 6, 17], [2, 8, 9, 100]]) print(a)print(b)print(c) print(np.argmin(c))print(np.argmin(c, axis=0)) # 按每列求出最小值的索引print(np.argmin(c, axis=1)) # 按每行求出最小值的索引# 最小的话 min换成max |
浙公网安备 33010602011771号