Суммируйте одну строку массива NumPy - PullRequest
6 голосов
/ 23 октября 2010

Я бы хотел сложить одну конкретную строку большого массива NumPy. Я знаю, что функция array.max() даст максимум по всему массиву, а array.max(1) даст мне максимум по каждой строке в виде массива. Тем не менее, я хотел бы получить максимум в определенной строке (например, строка 7 или строка 29). У меня большой массив, поэтому получение максимума для всех строк даст мне значительную потерю времени.

1 Ответ

21 голосов
/ 23 октября 2010

Вы можете легко получить доступ к строке двумерного массива, используя оператор индексации.Сама строка является массивом, представлением части исходного массива и предоставляет все методы массива, включая sum() и max().Поэтому вы можете легко получить максимальное значение для каждой строки следующим образом:

x = arr[7].max()   # Maximum in row 7
y = arr[29].sum()  # Sum of the values in row 29

Просто для полноты вы можете сделать то же самое для столбцов:

z = arr[:, 5].sum()  # Sum up all values in column 5.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...