Hướng dẫn how do you find the index of the minimum value in an array in python? - làm cách nào để tìm chỉ mục của giá trị nhỏ nhất trong một mảng trong python?

Tôi cần tìm chỉ số của nhiều hơn một giá trị tối thiểu xảy ra trong một mảng. Tôi khá được biết đến với np.argmin nhưng nó cho tôi chỉ số có giá trị tối thiểu rất đầu tiên trong một mảng. Ví dụ.

a = np.array[[1,2,3,4,5,1,6,1]]    
print np.argmin[a]

Điều này cho tôi 0, thay vào đó tôi mong đợi, 0,5,7.

Cảm ơn!

Đã hỏi ngày 23 tháng 10 năm 2013 lúc 16:09Oct 23, 2013 at 16:09

2

Cái này cần phải dùng mẹo:

a = np.array[[1,2,3,4,5,1,6,1]] 
print np.where[a == a.min[]]

Argmin không trả lại một danh sách như bạn mong đợi trong trường hợp này.

Đã trả lời ngày 23 tháng 10 năm 2013 lúc 16:21Oct 23, 2013 at 16:21

Tom Swiftytom SwiftyTom Swifty

2.7842 Huy hiệu vàng16 Huy hiệu bạc25 Huy hiệu Đồng2 gold badges16 silver badges25 bronze badges

2

Có lẽ

mymin = np.min[a]
min_positions = [i for i, x in enumerate[a] if x == mymin]

Nó sẽ cho [0,5,7].

Đã trả lời ngày 23 tháng 10 năm 2013 lúc 16:20Oct 23, 2013 at 16:20

Tonjotonjotonjo

1.3461 Huy hiệu vàng14 Huy hiệu bạc27 Huy hiệu đồng1 gold badge14 silver badges27 bronze badges

2

Tôi nghĩ rằng đây sẽ là cách dễ nhất, mặc dù nó không sử dụng bất kỳ chức năng Numpy lạ mắt nào

a       = np.array[[1,2,3,4,5,1,6,1]]                                        
min_val = a.min[]                                                            

print "min_val = {0}".format[min_val]                                        

# Find all of them                                                           
min_idxs = [idx for idx, val in enumerate[a] if val == min_val]              
print "min_idxs = {0}".format[min_idxs]

Đã trả lời ngày 23 tháng 10 năm 2013 lúc 16:26Oct 23, 2013 at 16:26

jrk0414jrk0414jrk0414

1341 Huy hiệu vàng1 Huy hiệu bạc11 Huy hiệu đồng1 gold badge1 silver badge11 bronze badges

Nếu bạn đang làm việc trên các dự án khoa học dữ liệu hoặc học máy, bạn có thể cần tìm giá trị hoặc chỉ số tối đa hoặc tối thiểu trong mảng Numpy. Đó là nơi mà thư viện Numpy đến.

Hàm np.argmin [] được sử dụng để lấy các chỉ số của phần tử tối thiểu từ một mảng [mảng đơn] hoặc bất kỳ hàng hoặc cột nào [mảng đa chiều] của bất kỳ mảng nào. Hàm argmin [] numpy [] lấy ARR, Trục, & nbsp; và & nbsp; ra làm tham số và trả về mảng.arr, axis, and out as parameters and returns the array.

Để tìm chỉ số của một phần tử tối thiểu từ mảng, hãy sử dụng hàm np.argmin [].array, use the np.argmin[] function.

Cú pháp

numpy.argmin[arr,axis=None,out=None]

Thông số

Hàm argmin [] Numpy có ba đối số:

  1. ARR: Mảng mà chúng tôi muốn các chỉ số của phần tử Min.: The array from which we want the indices of the min element.
  2. Trục: Theo mặc định, nó không có. Nhưng đối với mảng đa chiều, nếu chúng ta sẽ tìm thấy một chỉ số của bất kỳ phần tử tối đa nào của phần tử khôn ngoan hoặc thông thái cột, chúng ta phải cho trục = 1 hoặc trục = 0, tương ứng.: By default, it is None. But for the multidimensional array, if we’re going to find an index of any maximum of element row-wise or column-wise, we have to give axis=1 or axis=0, respectively.
  3. Ra: Nếu được cung cấp, kết quả sẽ được chèn vào mảng này. Nó nên có hình dạng và dtype thích hợp.: If provided, the result will be inserted into this array. It should be of the appropriate shape and dtype.

Giá trị trả về

Hàm np.argmin [] trả về một mảng chứa các chỉ số của các phần tử tối thiểu.

Tìm chỉ mục của phần tử tối thiểu từ mảng 1D

Xem mã sau.

#Importing numpy
import numpy as np

#We will create an 1D array
arr = np.array[[4, 24, 63, 121, 4, 64]]
#Printing the array
print["The array is: ", arr]
#Shape of the array
print["Shape of the array is : ", np.shape[arr]]

#Now we will print index of min value of this array
print["Index of minimum value of the given array is: ", np.argmin[arr]]

Đầu ra

The array is:  [  4  24  63 121   4  64]
Shape of the array is :  [6,]
Index of minimum value of the given array is:  0

Giải trình

Trong chương trình này, trước tiên chúng tôi đã tuyên bố một mảng với một số

số ngẫu nhiên được đưa ra bởi người dùng. Sau đó, chúng tôi đã in hình dạng [kích thước] của mảng. Sau đó, chúng tôi đã gọi argmin [] để lấy chỉ số của phần tử tối thiểu từ mảng. Chúng ta có thể thấy rằng phần tử tối thiểu của mảng này là 4, ở vị trí 0, vì vậy đầu ra là 0.

Tìm các chỉ số của các yếu tố tối đa từ mảng đa chiều

Xem mã sau.

#Importing numpy
import numpy as np

#We will create a 2D array
#Of shape 4x3
arr = np.array[[[1, 9, 4], [6, 55, 4], [1, 3, 40], [5, 6, 4]]]
#Printing the array
print["The array is: "]
print[arr]
print["Shape of the array is: ", np.shape[arr]]

#Now we will find the indices of minimum value for some cases

#Indices of minimum value of each row
a = np.argmin[arr, axis=1]
print["Indices of minimum value of each row of the array is: ", a]

#Indices of minimum value of each column
b = np.argmin[arr, axis=0]
print["Indices of minimum value of each column of the array is: ", b]

Đầu ra

The array is:
[[ 1  9  4]
 [ 6 55  4]
 [ 1  3 40]
 [ 5  6  4]]
Shape of the array is:  [4, 3]
Indices of minimum value of each row of the array is:  [0 2 0 2]
Indices of minimum value of each column of the array is:  [0 2 0]

Giải trình

Trong chương trình này, trước tiên chúng tôi đã tuyên bố một mảng với một sốThen we have called argmin[] to get the output of different cases.

số ngẫu nhiên được đưa ra bởi người dùng. Sau đó, chúng tôi đã in hình dạng [kích thước] của mảng. Sau đó, chúng tôi đã gọi argmin [] để lấy chỉ số của phần tử tối thiểu từ mảng. Chúng ta có thể thấy rằng phần tử tối thiểu của mảng này là 4, ở vị trí 0, vì vậy đầu ra là 0.

Tìm các chỉ số của các yếu tố tối đa từ mảng đa chiều

Trong chương trình này, trước tiên chúng tôi đã tuyên bố một ma trận có kích thước 4 × 3; Bạn cũng có thể thấy hình dạng của ma trận, đó là [4,3]. & nbsp; sau đó chúng tôi đã gọi argmin [] để có được đầu ra của các trường hợp khác nhau.

Xem thêm

Numpy Diag []

Asmatrix numpy []

Làm thế nào để bạn tìm thấy chỉ mục của một số tối thiểu trong một mảng?

Để có được chỉ số của giá trị tối thiểu trong một mảng:..
Sử dụng toán học.Phương thức Min [] để có được giá trị tối thiểu trong mảng ..
Sử dụng mảng.Phương thức indexof [] để lấy chỉ mục của giá trị tối thiểu ..
Phương thức Indexof trả về chỉ số của lần xuất hiện đầu tiên của giá trị trong mảng ..

Làm cách nào để tìm chỉ số nhỏ nhất trong Python?

Sử dụng các hàm min [] và list.index [] để có được chỉ mục nhỏ nhất của danh sách.Trong Python, phương thức min [] sẽ trả về giá trị nhỏ nhất của danh sách được xác định. index[] Functions to Get the Smallest Index of the List. In Python, the min[] method will return the smallest value of the defined list.

Làm thế nào để tôi tìm thấy chỉ số của Numpy tối thiểu?

Sử dụng numpy.argmin [], để có được chỉ số của phần tử nhỏ nhất trong chênh lệch_array [].Trong trường hợp nhiều giá trị tối thiểu, lần xuất hiện đầu tiên sẽ được trả về.In phần tử gần nhất và chỉ mục của nó từ mảng đã cho. argmin[], to obtain the index of the smallest element in difference_array[]. In the case of multiple minimum values, the first occurrence will be returned. Print the nearest element, and its index from the given array.

Làm thế nào để bạn tìm thấy chỉ số tối đa và tối thiểu trong Python?

Python cung cấp chức năng sẵn có khác nhau.Min [] được sử dụng để tìm ra giá trị tối thiểu trong một mảng, Max [] được sử dụng để tìm ra giá trị tối đa trong một mảng.index [] được sử dụng để tìm chỉ số của phần tử.min[] is used for find out minimum value in an array, max[] is used for find out maximum value in an array. index[] is used for finding the index of the element.

Bài Viết Liên Quan

Chủ Đề