Desviación absoluta mediana en R

Estadística con R Medidas de dispersión
Desviación absoluta mediana en R

La función mad en R se utiliza para calcular la desviación absoluta mediana (MAD), que mide la dispersión de un conjunto de datos. Es una alternativa robusta a la desviación tipica y al rango intercuartílico que es menos sensible a los valores atípicos.

Sintaxis

La sintaxis de la función mad es la siguiente:

mad(x, center = median(x), constant = 1.4826,
    na.rm = FALSE, low = FALSE, high = FALSE)

Siendo:

  • x: un vector numérico.
  • center: el centro de los datos utilizados para calcular la MAD. Por defecto, utiliza la mediana de x.
  • constant: un factor de escala por defecto de 1.4826, que permite garantizar la consistencia asintótica para datos normales.
  • na.rm: un valor lógico que indica si los valores que faltan deben eliminarse o no. Por defecto es FALSE.
  • low: un valor lógico que indica si se debe calcular la “mediana baja”. Por defecto es FALSE.
  • high: un valor lógico que indica si se debe calcular la “mediana alta”. Por defecto es FALSE.

Ejemplos

Dado un vector muestral llamado x puedes calcular su desviación absoluta mediana en R con la función mad de la siguiente manera:

# Datos de muestra
set.seed(19)
x <- rnorm(100)

# MAD
mad(x)
1.057287

Recuerda establecer na.rm = TRUE si tus datos contienen valores perdidos.

Función de tendencia central

La función central por defecto es median(x) pero también puedes introducir otra función como mean(x).

# Datos de muestra
set.seed(19)
x <- rnorm(100)

# MAD con función personalizada
mad(x, center = mean(x))
1.058821

Constante

La constante predeterminada de 1.4826 (1/qnorm(3/4)) garantiza la consistencia asintótica. Sin embargo, puedes personalizar el valor por defecto con constant.

# Datos de muestra
set.seed(19)
x <- rnorm(100)

# MAD con una constante personalizada
mad(x, constant = 1)
0.7131301

Mediana baja (lo-median)

Por defecto, cuando el tamaño de la muestra es par, la función calcula la media de los dos valores centrales. Sin embargo, cuando low = TRUE la función toma el menor de los dos valores centrales en lugar de su media.

# Datos de muestra
set.seed(19)
x <- rnorm(100)

# MAD lo-median
mad(x, low = TRUE)
0.7131301

Mediana alta (hi-median)

Cuando high = TRUE y el tamaño de la muestra es par, la función toma el mayor de los valores del medio en lugar de su media.

# Datos de muestra
set.seed(19)
x <- rnorm(100)

# MAD hi-median
mad(x, high = TRUE)
1.059213

Ten en cuenta que no es posible establecer low y high como TRUE al mismo tiempo.