Hướng dẫn find max in 2d array python - tìm tối đa trong python mảng 2d

29

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi đang cố gắng tìm một cách thanh lịch để tìm giá trị tối đa trong một mảng hai chiều. Ví dụ cho mảng này:

[0, 0, 1, 0, 0, 1] [0, 1, 0, 2, 0, 0][0, 0, 2, 0, 0, 1][0, 1, 0, 3, 0, 0][0, 0, 0, 0, 4, 0]

Tôi muốn trích xuất giá trị '4'. Tôi đã nghĩ đến việc làm tối đa trong Max nhưng tôi đang vật lộn trong việc thực hiện nó.

Hướng dẫn find max in 2d array python - tìm tối đa trong python mảng 2d

Đã hỏi ngày 20 tháng 11 năm 2016 lúc 8:11Nov 20, 2016 at 8:11

Một cách khác để giải quyết vấn đề này là sử dụng function numpy.amax ()

>>> import numpy as np
>>> arr = [0, 0, 1, 0, 0, 1] , [0, 1, 0, 2, 0, 0] , [0, 0, 2, 0, 0, 1] , [0, 1, 0, 3, 0, 0] , [0, 0, 0, 0, 4, 0]
>>> np.amax(arr)

Đã trả lời ngày 24 tháng 7 năm 2018 lúc 11:03Jul 24, 2018 at 11:03

Hướng dẫn find max in 2d array python - tìm tối đa trong python mảng 2d

2

Tối đa số tối đa (map(max, numbers) mang lại 1, 2, 2, 3, 4):

>>> numbers = [0, 0, 1, 0, 0, 1], [0, 1, 0, 2, 0, 0], [0, 0, 2, 0, 0, 1], [0, 1, 0, 3, 0, 0], [0, 0, 0, 0, 4, 0]

>>> map(max, numbers)
<map object at 0x0000018E8FA237F0>
>>> list(map(max, numbers))  # max numbers from each sublist
[1, 2, 2, 3, 4]

>>> max(map(max, numbers))  # max of those max-numbers
4

Đã trả lời ngày 20 tháng 11 năm 2016 lúc 8:13Nov 20, 2016 at 8:13

Falsetrufalsetrufalsetru

344K58 Huy hiệu vàng686 Huy hiệu bạc609 Huy hiệu đồng58 gold badges686 silver badges609 bronze badges

Không hoàn toàn ngắn như câu trả lời của Falsetru nhưng đây có lẽ là những gì bạn có trong đầu:

>>> numbers = [0, 0, 1, 0, 0, 1], [0, 1, 0, 2, 0, 0], [0, 0, 2, 0, 0, 1], [0, 1, 0, 3, 0, 0], [0, 0, 0, 0, 4, 0]
>>> max(max(x) for x in numbers)
4

Đã trả lời ngày 21 tháng 5 năm 2018 lúc 1:34May 21, 2018 at 1:34

Hướng dẫn find max in 2d array python - tìm tối đa trong python mảng 2d

Schmyschmyschmy

Huy hiệu 1211 Bạc5 Huy hiệu Đồng1 silver badge5 bronze badges

Còn cái này thì sao?

import numpy as np
numbers = np.array([[0, 0, 1, 0, 0, 1], [0, 1, 0, 2, 0, 0], [0, 0, 2, 0, 0, 1], [0, 1, 0, 3, 0, 0], [0, 0, 0, 0, 4, 0]])

print(numbers.max())

4

CEBE

3,3491 Huy hiệu vàng24 Huy hiệu bạc37 Huy hiệu đồng1 gold badge24 silver badges37 bronze badges

Đã trả lời ngày 8 tháng 4 năm 2020 lúc 11:57Apr 8, 2020 at 11:57

Hướng dẫn find max in 2d array python - tìm tối đa trong python mảng 2d

1

>>> numbers = [0, 0, 1, 0, 0, 1], [0, 1, 0, 2, 0, 0], [0, 0, 2, 0, 0, 1], [0, 1, 0, 3, 0, 0], [0, 0, 0, 0, 4, 0]

Bạn có thể thêm tham số

>>> import numpy as np
>>> arr = [0, 0, 1, 0, 0, 1] , [0, 1, 0, 2, 0, 0] , [0, 0, 2, 0, 0, 1] , [0, 1, 0, 3, 0, 0] , [0, 0, 0, 0, 4, 0]
>>> np.amax(arr)
0 vào
>>> import numpy as np
>>> arr = [0, 0, 1, 0, 0, 1] , [0, 1, 0, 2, 0, 0] , [0, 0, 2, 0, 0, 1] , [0, 1, 0, 3, 0, 0] , [0, 0, 0, 0, 4, 0]
>>> np.amax(arr)
1 như bên dưới để tìm giá trị tối đa trong mảng/danh sách 2-D

>>> max(max(numbers, key=max))
4

Đã trả lời ngày 7 tháng 6 năm 2021 lúc 2:22Jun 7, 2021 at 2:22

Hướng dẫn find max in 2d array python - tìm tối đa trong python mảng 2d

Afghaniafghaniafghani

691 Huy hiệu bạc5 Huy hiệu đồng1 silver badge5 bronze badges

Một giải pháp rất dễ dàng để có được cả chỉ số tối đa và tối đa của bạn có thể là:

numbers = np.array([[0,0,1,0,0,1],[0,1,0,2,0,0],[0,0,2,0,0,1],[0,1,0,3,0,0],[0,0,0,0,4,0]])
ind = np.argwhere(numbers == numbers.max()) # In this case you can also get the index of your max
numbers[ind[0,0],ind[0,1]]

Đã trả lời ngày 1 tháng 4 năm 2021 lúc 14:57Apr 1, 2021 at 14:57

MarkhmarkhMarkh

Phù hiệu đồng 6355 bronze badges

Cách tiếp cận này không trực quan như những người khác nhưng ở đây,

>>> import numpy as np
>>> arr = [0, 0, 1, 0, 0, 1] , [0, 1, 0, 2, 0, 0] , [0, 0, 2, 0, 0, 1] , [0, 1, 0, 3, 0, 0] , [0, 0, 0, 0, 4, 0]
>>> np.amax(arr)
2

>>> import numpy as np
>>> arr = [0, 0, 1, 0, 0, 1] , [0, 1, 0, 2, 0, 0] , [0, 0, 2, 0, 0, 1] , [0, 1, 0, 3, 0, 0] , [0, 0, 0, 0, 4, 0]
>>> np.amax(arr)
3

for i in numbers:

    maximum = max(maximum,max(i))

return maximum"

Đã trả lời ngày 25 tháng 6 lúc 3:39Jun 25 at 3:39

Hướng dẫn find max in 2d array python - tìm tối đa trong python mảng 2d

Sajid Khansajid KhanSajid Khan

531 Huy hiệu bạc8 Huy hiệu đồng1 silver badge8 bronze badges

Làm thế nào để bạn tìm thấy tối đa của một mảng 2D trong Python?

Làm thế nào để bạn tìm thấy tối đa của một mảng 2D trong Python ?..
Nhập Numpy dưới dạng NP ..
numpy_oned_array = np. Mảng ([1, 2, -4, 10, -11, 4, 22]).
MAX_VALUE_ONED = NP. AMAX (numpy_oned_array).
In ("Giá trị tối đa trong mảng:", MAX_VALUE_ONED).
numpy_twod_array = np. mảng([.

Làm thế nào để bạn tìm thấy số tối đa trong một mảng 2D?

int max = mảng [i] [0];Mục đích của bạn là tìm mức tối đa của mỗi hàng, vì vậy về cơ bản bạn đang bắt đầu mọi lần lặp với phần tử đầu tiên của hàng.Lưu câu trả lời này. Your purpose is to find the maximum of each row, so basically you are starting the every iteration with the first element of the row. Save this answer.

Làm thế nào để bạn tìm thấy giá trị tối đa và tối thiểu của một mảng 2D trong Python?

Chúng ta có thể tìm thấy các giá trị tối thiểu và tối đa từ mỗi hàng của một mảng 2D bằng cách sử dụng các hàm "Min" và "Max" có sẵn trong thư viện Numpy.using the "min" and "max" functions available in the Numpy library.

Làm thế nào để bạn tìm thấy giá trị tối đa trong một mảng trong Python?

Python cũng có hàm tối đa tích hợp () có thể tính toán các giá trị tối đa của các phép lặp.Bạn có thể sử dụng Max () tích hợp này để tìm phần tử tối đa trong mảng Numpy một chiều, nhưng nó không có hỗ trợ cho các mảng có nhiều chiều hơn.max() function that can calculate maximum values of iterables. You can use this built-in max() to find the maximum element in a one-dimensional NumPy array, but it has no support for arrays with more dimensions.