Mean of an Array Containing some NAN Elements

5 visualizzazioni (ultimi 30 giorni)
Hello, I have two different arrays, A2 (96x96 doubles) and A3 (96x96x96 doubles), in both these arrays some elements inside are NAN.
I would like to compute the mean (single value for each array) of all the non-NAN values, how can I do it?
I tried with mean(A2) and mean(A3) but is not working

Risposta accettata

KSSV
KSSV il 7 Lug 2022
Modificato: KSSV il 7 Lug 2022
Read the doc of mean, there is option of omitting nan.
A = [1 2 NaN 3 4 NaN] ;
mean(A,'omitnan')
ans = 2.5000
In older versions it is nanmean.
  2 Commenti
Fabio Taccaliti
Fabio Taccaliti il 7 Lug 2022
Thanks, how can I do the mean of all the components, because right now is giving me a 1x96 array
KSSV
KSSV il 7 Lug 2022
Again read the doc, you cn specify the dimension to calculate the mean.

Accedi per commentare.

Più risposte (1)

Vijeta Singh Yadav
Vijeta Singh Yadav il 7 Lug 2022
M = mean(___,nanflag)
This function will define whether to exclude or include NaN values from the computation of any previous syntaxes.
It has the following 2 types:
  • Mean(X,’omitNaN’): It will omit all NaN values from the calculation
  • Mean(X,’includeNaN’): It will add all the NaN values in the calculation.
Refer to Matlab Documentation for more information.

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by