How are NumPy Axes Used?

Numpy axes are used to indicate the order in which the axes of a NumPy array should be traversed. Each axis in a NumPy array is assigned an index number, and the order of the indices determines the order of traversal. axes can be used to specify the order of the array elements, as well as which elements should be included in operations such as matrix multiplication and linear algebra calculations.


Many functions in require that you specify an axis along which to apply a certain calculation.

Typically the following rule of thumb applies:

  • axis=0: Apply the calculation “column-wise”
  • axis=1: Apply the calculation “row-wise”

The following image shows a visual representation of the axes on a NumPy matrix with 2 rows and 4 columns:

NumPy axes

The following examples show how to use the axis argument in different scenarios with the following NumPy matrix:

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]])

Example 1: Find Mean Along Different Axes

We can use axis=0 to find the mean of each column in the NumPy matrix:

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

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

The output shows the mean value of each column in the matrix.

For example:

  • The mean value of the first column is (1 + 5) / 2 = 3.
  • The mean value of the second column is (4 + 10) / 2 = 7.

And so on.

We can also use axis=1 to find the mean of each row in the matrix:

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

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

The output shows the mean value of each row in the matrix.

  • The mean value in the first row is (1+4+7+8) / 4 = 5.
  • The mean value in the second row is (5+10+12+14) / 4 = 10.25.

Example 2: Find Sum Along Different Axes

We can use axis=0 to find the sum of each column in the matrix:

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

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

The output shows the sum of each column in the matrix.

For example:

  • The sum of the first column is 1 + 5 = 6.
  • The sum of the second column is 4 + 10 = 14.

And so on.

We can also use axis=1 to find the sum of each row in the matrix:

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

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

The output shows the sum of each row in the matrix.

For example:

  • The sum of the first row is 1+4+7+8 = 20.
  • The sum of the second row is 5+10+12+14 = 41.

The following tutorials explain how to perform other common operations in NumPy:

x