#arrays #python-3.x
#массивы #python-3.x
Вопрос:
Я хочу максимальное значение из каждого массива:
[array([[0.64104085 0.2695865 0.12760413],
[0.20816632 0.72728643 0.23365428],[0.52334888 0.83298642 0.43656896], dtype=float32)]
вывод:
[array([[0.64104085],[0.72728643],[0.83298642], dtype=float32)]
Мой код следующий:
def find_max(arr):
#find maximum value
max_value = np.array([])
for i, j in zip(arr,range(len(arr))):
max_val = np.array(max(i))
max_value = np.append(max_value, max_val)
return[max_value]
import numpy as np
arr = np.random.rand(9).reshape(3,3)
print(arr)
find_max(arr)
Ответ №1:
Используя np.reshape
res = np.max(a, axis=1).reshape(a.shape[0], -1)
Используя понимание списка
res = np.array([[x] for x in np.max(a, axis=1)])
print(res)
Вывод:
[[0.64104085]
[0.72728643]
[0.83298642]]
Комментарии:
1. Спасибо за любезный ответ, вывод вашего кода: [0.64104085 0.72728643 0.83298642] но я хочу [[0.64104085], [0.72728643], [0.83298642]] Заранее спасибо
2. да, я могу найти максимальное значение из каждого массива. но я хочу вывод в другой форме. что такое: [массив([[0.64104085],[0.72728643],[0.83298642], dtype=float32)]