Main Content

nanmean

(No recomendado) Media, ignorando valores NaN

No se recomienda nanmean. Use la función mean de MATLAB® en su lugar. Con la función mean, puede especificar si quiere incluir u omitir los valores NaN para el cálculo. Para obtener más información, consulte Consideraciones de compatibilidad.

Descripción

ejemplo

y = nanmean(X) devuelve la mean de los elementos de X, calculada después de eliminar todos los valores NaN .

  • Si X es un vector, nanmean(X) es la media de todos los elementos que no sean NaN de X.

  • Si X es una matriz, nanmean(X) es un vector fila de medias de columnas, calculado después de eliminar los valores NaN.

  • Si X es un arreglo multidimensional, nanmean opera a lo largo de la primera dimensión no singular de X. El tamaño de esta dimensión pasa a ser 1, mientras que los tamaños del resto de dimensiones no varían. nanmean elimina todos los valores NaN.

Para obtener información sobre cómo nanmean trata arreglos que solo contienen valores NaN, consulte Consejos.

ejemplo

y = nanmean(X,'all') devuelve la media de todos los elementos de X, calculada después de eliminar los valores NaN.

ejemplo

y = nanmean(X,dim) devuelve la media a lo largo de la dimensión de operación dim de X, calculada después de eliminar los valores NaN.

ejemplo

y = nanmean(X,vecdim) devuelve la media de las dimensiones especificadas en el vector vecdim. La función calcula las medias después de eliminar los valores NaN. Por ejemplo, si X es una matriz, nanmean(X,[1 2]) es la media de todos los elementos que no sean NaN de X porque cada elemento de una matriz está dentro de la parte del arreglo definida por las dimensiones 1 y 2.

Ejemplos

contraer todo

Encuentre las medias de columnas de los datos de la matriz con valores faltantes.

X = magic(3);
X([1 6:9]) = NaN
X = 3×3

   NaN     1   NaN
     3     5   NaN
     4   NaN   NaN

y = nanmean(X)
y = 1×3

    3.5000    3.0000       NaN

Encuentre las medias de todos los valores de un arreglo, ignorando los valores faltantes.

Cree un arreglo de 2 por 5 por 3 X con algunos valores faltantes.

X = reshape(1:30,[2 5 3]);
X([10:12 25]) = NaN
X = 
X(:,:,1) =

     1     3     5     7     9
     2     4     6     8   NaN


X(:,:,2) =

   NaN    13    15    17    19
   NaN    14    16    18    20


X(:,:,3) =

    21    23   NaN    27    29
    22    24    26    28    30

Encuentre la media de los elementos de X.

y = nanmean(X,'all')
y = 15.6538

Encuentre las medias de filas de los datos de la matriz con valores faltantes especificando el cálculo de las medias a lo largo de la segunda dimensión.

X = magic(3);
X([1 6:9]) = NaN
X = 3×3

   NaN     1   NaN
     3     5   NaN
     4   NaN   NaN

y = nanmean(X,2)
y = 3×1

     1
     4
     4

Encuentre la media de un arreglo multidimensional en diferentes dimensiones.

Cree un arreglo de 2 por 5 por 3 X con algunos valores faltantes.

X = reshape(1:30,[2 5 3]);
X([10:12 25]) = NaN
X = 
X(:,:,1) =

     1     3     5     7     9
     2     4     6     8   NaN


X(:,:,2) =

   NaN    13    15    17    19
   NaN    14    16    18    20


X(:,:,3) =

    21    23   NaN    27    29
    22    24    26    28    30

Encuentre la media de cada página de X especificando las dimensiones 1 y 2 como las dimensiones de operación.

ypage = nanmean(X,[1 2])
ypage = 
ypage(:,:,1) =

     5


ypage(:,:,2) =

   16.5000


ypage(:,:,3) =

   25.5556

Por ejemplo, ypage(1,1,1) es la media de los elementos que no son NaN de X(:,:,1).

Encuentre la media de elementos de cada porción de X(i,:,:) especificando las dimensiones 2 y 3 como las dimensiones operativas.

yrow = nanmean(X,[2 3])
yrow = 2×1

   14.5385
   16.7692

Por ejemplo, yrow(2) es la media de los elementos que no son NaN de X(2,:,:).

Argumentos de entrada

contraer todo

Datos de entrada, especificados como un escalar, un vector, una matriz o un arreglo multidimensional.

Si X es un arreglo vacío, nanmean(X) es NaN. Para obtener más información, consulte Consejos.

Tipos de datos: single | double

La dimensión a lo largo de la que operar, especificada como un escalar entero positivo. Si no especifica un valor, el valor predeterminado es la primera dimensión del arreglo cuyo tamaño no sea igual a 1.

dim indica la dimensión cuya longitud se reduce a 1. size(y,dim) es 1, mientras que los tamaños del resto de dimensiones no varían.

Considere un arreglo de dos dimensiones X:

  • Si dim es igual a 1, nanmean(X,1) devuelve un vector fila que contiene la media de cada columna.

  • Si dim es igual a 2, nanmean(X,2) devuelve un vector columna que contiene la media de cada fila.

Si dim es mayor que ndims(X) o si size(X,dim) es 1, nanmean devuelve X.

Tipos de datos: single | double

Un vector de dimensiones, especificado como un vector entero positivo. Cada elemento de vecdim representa una dimensión del arreglo de entrada X. La salida y tiene la longitud 1 en las dimensiones operativas especificadas. El resto de las longitudes de las dimensiones son iguales para X e y.

Por ejemplo, si X es un arreglo de 2 por 3 por 3, nanmean(X,[1 2]) devuelve un arreglo de 1 por 1 por 3. Cada elemento de la salida es la media de los elementos de la página correspondiente de X.

Mapping of input dimension of 2-by-3-by-3 to output dimension of 1-by-1-by-3

Tipos de datos: single | double

Argumentos de salida

contraer todo

Valores de media, devueltos como un escalar, un vector, una matriz o un arreglo multidimensional.

Sugerencias

  • Cuando nanmean calcula la media de un arreglo que solo contiene valores NaN, el arreglo queda vacío una vez eliminados los valores NaN y, por tanto, la suma de los elementos restantes es 0. Como el cálculo de la media conlleva una división por 0, el valor de la media es NaN. La salida NaN no es una media de los valores NaN.

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a

contraer todo

R2020b: No se recomienda nanmean.

No se recomienda nanmean. Use la función mean de MATLAB en su lugar. No se planea eliminar nanmean.

Para actualizar el código, cambie las instancias del nombre de la función nanmean a mean. Después, especifique la opción 'omitnan' con el argumento de entrada nanflag.

La función mean tiene las siguientes ventajas respecto a la función nanmean:

  • mean ofrece más prestaciones ampliadas para admitir arreglos altos, arreglos de GPU, arreglos de distribución, generación de código C/C++ y generación de código GPU.

  • mean devuelve un valor de salida con un tipo de datos especificado.

Consulte también

|