Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

trimmean

Media, excluyendo los valores atípicos

Descripción

ejemplo

m = trimmean(X,percent) Devuelve la media de valores de, calculado después de quitar los valores atípicos de.XX Por ejemplo, si es un vector que tiene valores, es la media de excluir los valores de datos más altos y más bajos, donde.XnmXkk = n*(percent/100)/2

  • Si es un vector, entonces es la media de todos los valores de, calculado después de quitar los Outliers.Xtrimmean(X,percent)X

  • Si es una matriz, entonces es un vector de fila de la columna significa, calculado después de quitar los valores atípicos.Xtrimmean(X,percent)

  • Si es una matriz multidimensional, a continuación, opera a lo largo de la primera dimensión nonsingleton de.XtrimmeanX

ejemplo

m = trimmean(X,percent,flag) Especifica cómo recortar cuando (la mitad del número de valores atípicos) no es un entero.k

ejemplo

m = trimmean(___,'all') Devuelve la media recortada de todos los valores en el uso de cualquiera de las combinaciones de argumentos de entrada en las sintaxis anteriores.X

ejemplo

m = trimmean(___,dim) Devuelve la media recortada a lo largo de la dimensión operativa de.dimX

ejemplo

m = trimmean(___,vecdim) Devuelve la media recortada sobre las cotas especificadas en el vector.vecdim Por ejemplo, si es una matriz de 2 por 3 por 4, devuelve una matriz de 1 por 1 por 4.Xtrimmean(X,10,[1 2]) Cada valor de la matriz de salida es la media del 90% medio de los valores en la página correspondiente de.X

Ejemplos

contraer todo

Encuentre la eficiencia relativa de la media recortada del 10% a la media de la muestra para un conjunto de datos determinado.

Genere una matriz 100-by-100 de números aleatorios de la distribución normal estándar. Esta matriz representa 100 muestras, cada una conteniendo 100 puntos de datos.

rng default;  % For reproducibility X = normrnd(0,1,100,100);

Calcule la media de la muestra y la media recortada del 10% para cada columna de la matriz de datos.

m = mean(X); % Sample mean trim = trimmean(X,10); % Trimmed mean

Calcule la eficiencia relativa de la media recortada a la media de la muestra. La eficiencia relativa es la varianza de la media de la muestra dividida por la varianza de la media recortada.

vm = var(m) % Variance of the sample mean
vm = 0.0094 
vtrim = var(trim) % Variance of the trimmed mean
vtrim = 0.0097 
efficiency = vm/vtrim % Relative efficiency of the trimmed mean to the sample mean
efficiency = 0.9663 

La media de la muestra tiene una varianza menor que la media recortada ().efficiency < 1 Por lo tanto, la media recortada es menos eficiente que la media de la muestra.

Controle el recorte de una distribución con valores atípicos cuando (la mitad del número de valores atípicos que se va a recortar) no sea un entero.k

Genere un vector de números aleatorios de la distribución del alumno con grados de libertad iguales a 1.t La distribución del estudiante tiende a tener valores atípicos.t

rng default;  % For reproducibility nu = 1; % Degrees of freedom n = 60; % Number of rows m = 1;  % Number of columns x = trnd(nu,n,m); % Vector 

Visualice la distribución utilizando una gráfica de probabilidad normal.

probplot(x)

Aunque la distribución es simétrica alrededor de cero, varios valores atípicos afectan a la media.

Encuentre la media de los datos.

mn = mean(x)
mn = 1.6452 

Encuentre la media recortada 33% de los datos.

trim = trimmean(x,33)
trim = 0.4940 

La media recortada del 33% está más cerca de cero, que es más representativa de los datos. Para la media recortada 33%, no es un número entero (da un valor de).kk = 60*(33/100)/29.9 Por lo tanto, redondea al entero más cercano () por abandono.trimmeank10

Controle el recorte redondeando hasta el siguiente entero más pequeño ().k9 Especifique el control para recortar.'floor'

trim = trimmean(x,33,'floor')
trim = 0.4933 

Encuentre la media recortada a lo largo de diferentes dimensiones para una matriz.

Genere una matriz de números aleatorios de la distribución del alumno.t La distribución del estudiante tiende a tener valores atípicos.t

rng('default') nu = 1; % Degrees of freedom n = 2; % Number of rows m = 100;  % Number of columns X = trnd(nu,n,m);

Visualice la distribución para cada fila de uso de una gráfica de probabilidad normal.X

for i = 1:n     figure()     probplot(X(i,:)) end

Encuentra la media de cada fila de.X

mn = mean(X,2)
mn = 2×1

   -2.7379
    2.0087

Encuentre la media recortada al 30% para cada fila de.X Especifique como la dimensión operativa.dim = 2

trim = trimmean(X,30,2)
trim = 2×1

   -0.0868
    0.1115

La media recortada del 30% de cada fila está más cerca de cero, lo que es más representativo de los datos.

Calcule la media recortada sobre varias dimensiones utilizando los argumentos de entrada y.'all'vecdim

Cree una matriz de 5 por 4 por 2 con algunos valores de valor atípico.

X = reshape(1:40,[5 4 2]); X([3 37]) = -100
X =  X(:,:,1) =       1     6    11    16      2     7    12    17   -100     8    13    18      4     9    14    19      5    10    15    20   X(:,:,2) =      21    26    31    36     22    27    32  -100     23    28    33    38     24    29    34    39     25    30    35    40  

Encuentra el 10% de media recortada de.X

mall = trimmean(X,10,'all')
mall = 19.4722 

es la media del 90% medio de los valores en.mallX

Encuentre el 10% de media recortada para cada página de.X

mpage = trimmean(X,10,[1 2])
mpage =  mpage(:,:,1) =     10.3889   mpage(:,:,2) =     29.6111  

Por ejemplo, es la media del 90% medio de los valores en.mpage(1,1,2)X(:,:,2)

Argumentos de entrada

contraer todo

Datos de entrada que representan una muestra de una población, especificada como un vector, matriz o matriz multidimensional.

  • Si es un vector, entonces es la media de todos los valores de, calculado después de quitar los Outliers.Xtrimmean(X,percent)X

  • Si es una matriz, entonces es un vector de fila de la columna significa, calculado después de quitar los valores atípicos.Xtrimmean(X,percent)

  • Si es una matriz multidimensional, a continuación, opera a lo largo de la primera dimensión nonsingleton de.XtrimmeanX

Para especificar la dimensión operativa cuando es una matriz o una matriz, utilice el argumento de entrada.Xdim

trata los valores como valores faltantes y los elimina.trimmeanNaNX

Tipos de datos: single | double

Porcentaje de datos de entrada que se recortarán, especificados como un escalar entre y.0100

utiliza el valor de para determinar el número de valores atípicos (valores más altos y más bajos) para eliminar antes de calcular la media.trimmeanpercentkXX Para con los valores,.Xnk = n*(percent/100)/2

Tipos de datos: single | double

Control para recortar cuando (la mitad del número de Outliers) no es un entero, especificado como uno de los valores de esta tabla.k

ValorDescripción
'round'Redondee al entero más cercano (redondee a un entero más pequeño si es un entero medio).kk Este valor es el predeterminado.
'floor'Redondee hasta el siguiente entero más pequeño.k
'weighted'Si, donde es un entero y es una fracción, calcule una media ponderada con el peso para los valores y y el peso completo para los valores entre ellos.k = i + fif(1 – f)(i + 1)th(n – i)th

Tipos de datos: char | string

Dimensión a lo largo de la cual se opera, especificada como un escalar entero positivo. Si no especifica un valor, el valor predeterminado es la primera dimensión de matriz cuyo tamaño no es igual a 1.X

Considere una matriz bidimensional:X

  • Si es igual a 1, a continuación, devuelve un vector de fila que contiene la media recortada para cada columna en.dimtrimmean(X,percent,1)X

  • Si es igual a 2, a continuación, devuelve un vector de columna que contiene la media recortada para cada fila en.dimtrimmean(X,percent,2)X

Si es mayor que o si es 1, a continuación, devuelve.dimndims(X)size(X,dim)trimmeanX

Tipos de datos: single | double

Vector de cotas, especificado como un vector entero positivo. Cada elemento de representa una dimensión de la matriz de entrada.vecdimX La salida tiene una longitud de 1 en las dimensiones operativas especificadas.m Las otras longitudes de cota son las mismas para y.Xm

Por ejemplo, si es una matriz de 2 por 3 por 3, a continuación, devuelve un array 1-por-1-por-3.Xtrimmean(X,10,[1 2]) Cada elemento de la salida es la media del 90% medio de los valores en la página correspondiente de.X

Tipos de datos: single | double

Argumentos de salida

contraer todo

Valores de media recortados, devueltos como un array escalar, Vector, matriz o multidimensional.

Sugerencias

  • La media recortada es una estimación robusta de la ubicación de una muestra de datos. Si los datos contienen valores atípicos, la media recortada representa el centro de los datos mejor que la media de la muestra. Sin embargo, si todos los datos proceden de la misma distribución de probabilidad, la media recortada es menos eficaz que la media de la muestra como estimador de la ubicación de datos.

Capacidades ampliadas

Consulte también

| | |

Introducido antes de R2006a