Простое объяснение осей NumPy (с примерами)

Простое объяснение осей NumPy (с примерами)

Многие функции в NumPy требуют, чтобы вы указали ось, вдоль которой применяется определенный расчет.

Обычно применяется следующее эмпирическое правило:

  • axis=0 : применить вычисление «по столбцам»
  • axis=1 : применить вычисление «построчно»

На следующем изображении показано визуальное представление осей в матрице NumPy с 2 строками и 4 столбцами:

Оси NumPy

В следующих примерах показано, как использовать аргумент оси в различных сценариях со следующей матрицей NumPy:

import numpy as np

#create NumPy matrix
my_matrix = np.matrix([[1, 4, 7, 8], [5, 10, 12, 14]])

#view NumPy matrix
my_matrix

matrix([[ 1, 4, 7, 8],
 [ 5, 10, 12, 14]])

Пример 1. Найдите среднее значение по разным осям

Мы можем использовать ось = 0 , чтобы найти среднее значение каждого столбца в матрице NumPy:

#find mean of each column in matrix
np.mean (my_matrix, axis= 0 )

matrix([[ 3. , 7. , 9.5, 11. ]])

Вывод показывает среднее значение каждого столбца в матрице.

Например:

  • Среднее значение первого столбца равно (1 + 5)/2 = 3 .
  • Среднее значение второго столбца равно (4 + 10)/2 = 7 .

И так далее.

Мы также можем использовать ось = 1 , чтобы найти среднее значение каждой строки в матрице:

#find mean of each row in matrix
np.mean (my_matrix, axis= 1 )

matrix([[ 5. ],
 [10.25]])

Вывод показывает среднее значение каждой строки в матрице.

Например:

  • Среднее значение в первой строке равно (1+4+7+8) / 4 = 5 .
  • Среднее значение во второй строке равно (5+10+12+14)/4 = 10,25 .

Пример 2. Найдите сумму по разным осям

Мы можем использовать ось = 0 , чтобы найти сумму каждого столбца в матрице:

#find sum of each column in matrix
np.sum (my_matrix, axis= 0 )

matrix([[ 6, 14, 19, 22]])

Вывод показывает сумму каждого столбца в матрице.

Например:

  • Сумма первого столбца равна 1 + 5 = 6 .
  • Сумма второго столбца равна 4 + 10 = 14 .

И так далее.

Мы также можем использовать ось = 1 , чтобы найти сумму каждой строки в матрице:

#find sum of each row in matrix
np.sum (my_matrix, axis= 1 )

matrix([[20],
 [41]])

Вывод показывает сумму каждой строки в матрице.

Например:

  • Сумма первой строки равна 1+4+7+8 = 20 .
  • Сумма второй строки 5+10+12+14 = 41 .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в NumPy:

Как создать матрицу NumPy со случайными числами
Как нормализовать матрицу NumPy
Как добавить строку в матрицу в NumPy

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.