Skip to content
Related Articles
sciPy stats.nanmean() function | Python
• Last Updated : 11 Feb, 2019

`scipy.stats.nanmean(array, axis=0)` function calculates the arithmetic mean by ignoring the Nan (not a number) values of the array elements along the specified axis of the array.

It’s formula – Parameters :
array : Input array or object having the elements, including Nan values, to calculate the arithmetic mean.
axis : Axis along which the mean is to be computed. By default axis = 0.

Returns : Arithmetic mean of the array elements (ignoring the Nan values) based on the set parameters.

Code #1:

 `# Arithmetic Mean ``import` `scipy``import` `numpy as np`` ` `arr1 ``=` `[``1``, ``3``, np.nan, ``27``] ``  ` `print``(``"Arithmetic Mean using nanmean :"``, scipy.nanmean(arr1))`` ` `print``(``"Arithmetic Mean without handling nan value :"``, scipy.mean(arr1)) `

Output :

```Arithmetic Mean using nanmean : 10.333333333333334
Arithmetic Mean without handling nan value : nan```

Code #2: With multi-dimensional data

 `# Arithmetic Mean ``from` `scipy ``import` `mean``from` `scipy ``import` `nanmean``import` `numpy as np`` ` `arr1 ``=` `[[``1``, ``3``, ``27``], ``        ``[``3``, np.nan, ``6``], ``        ``[np.nan, ``6``, ``3``], ``        ``[``3``, ``6``, np.nan]] ``  ` `print``(``"Arithmetic Mean is :"``, mean(arr1)) ``print``(``"Arithmetic Mean handling nan :"``, nanmean(arr1)) `` ` `# using axis = 0``print``(``"\nArithmetic Mean is with default axis = 0 : \n"``, ``      ``mean(arr1, axis ``=` `0``))``print``(``"\nArithmetic Mean handling nan with default axis = 0 : \n"``, ``      ``nanmean(arr1, axis ``=` `0``))`` ` `# using axis = 1``print``(``"\nArithmetic Mean is with default axis = 1 : \n"``, ``      ``mean(arr1, axis ``=` `1``))  ``print``(``"\nArithmetic Mean handling nan with default axis = 1 : \n"``, ``      ``nanmean(arr1, axis ``=` `1``))  `

Output :

```Arithmetic Mean is : nan
Arithmetic Mean handling nan : 6.444444444444445

Arithmetic Mean is with default axis =0 :
[nan nan nan]

Arithmetic Mean handling nan with default axis =0 :
[ 2.33333333  5.         12.        ]

Arithmetic Mean is with default axis =1 :
[10.33333333         nan         nan         nan]

Arithmetic Mean handling nan with default axis =1 :
[10.33333333  4.5         4.5         4.5       ]```

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up