Many functions in NumPy 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:

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.

For example:

- 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**.

**Additional Resources**

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

How to Create a NumPy Matrix with Random Numbers

How to Normalize a NumPy Matrix

How to Add Row to Matrix in NumPy