Найти минимум в каждой строке двумерного массива
Как найти минимум в каждой строке двумерного массива?
import numpy as np
# Ввод и вывод матрицы
y = int(input('Количество элементов строки: '))
x = int(input('Количество строк: '))
matrix = np.array([[y for y in input('Значения матрицы построчно: ').split()]
for x in range(x)], dtype=int)
Ответы (2 шт):
Автор решения: MaxU
→ Ссылка
Пример:
пример исходной матрицы:
In [41]: matrix = np.arange(1, 13).reshape(4, 3)
In [42]: matrix
Out[42]:
array([[ 1, 2, 3],
[ 4, 5, 6],
[ 7, 8, 9],
[10, 11, 12]])
минимумы по столбцам:
In [43]: matrix.min(axis=0)
Out[43]: array([1, 2, 3])
минимумы по строкам:
In [44]: matrix.min(axis=1)
Out[44]: array([ 1, 4, 7, 10])
UPDATE:
при матрице [[0, 2, 9], [6, 4, 8], [7, 3, 1]] находится min не в каждой строке, т.е. для строк выводит [0 2 1]
все правильно работает:
In [45]: a = np.array([[0, 2, 9], [6, 4, 8], [7, 3, 1]])
In [46]: a
Out[46]:
array([[0, 2, 9],
[6, 4, 8],
[7, 3, 1]])
In [47]: a.min(axis=1)
Out[47]: array([0, 4, 1])