Cómo calcular la desviación estándar ponderada en R

Actualizado por ultima vez el 7 de mayo de 2021, por .

La desviación estándar ponderada es una forma útil de medir la dispersión de valores en un conjunto de datos cuando algunos valores en el conjunto de datos tienen pesos más altos que otros.

La fórmula para calcular una desviación estándar ponderada es:

dónde:

  • N: el número total de observaciones
  • M: el número de pesos distintos de cero
  • w i : un vector de pesos
  • x i : un vector de valores de datos
  • x : la media ponderada

La forma más fácil de calcular una desviación estándar ponderada en R es usar la función wt.var () del paquete Hmisc , que usa la siguiente sintaxis:

#define los valores de los datos
x <- c (4, 7, 12, 13, ...)

#definir pesos
 wt <- c (.5, 1, 2, 2, ...)

#calcular la varianza
 ponderada weighted_var <- wtd. var (x, peso)

#calcular la desviación estándar
 ponderada weighted_sd <- sqrt (weighted_var)

Los siguientes ejemplos muestran cómo utilizar esta función en la práctica.

Ejemplo 1: Desviación estándar ponderada para un vector

El siguiente código muestra cómo calcular la desviación estándar ponderada para un solo vector en R:

biblioteca (Hmisc)

#define los valores de los datos 
x <- c (14, 19, 22, 25, 29, 31, 31, 38, 40, 41)

#define pesos
peso <- c (1, 1, 1.5, 2, 2, 1.5, 1, 2, 3, 2)

#calcular la varianza  
ponderada weighted_var <- wtd. var (x, peso)

#calcular la desviación estándar ponderada
 sqrt (weighted_var)

[1] 8.570051

La desviación estándar ponderada resulta ser 8.57 .

Ejemplo 2: Desviación estándar ponderada para una columna de marco de datos

El siguiente código muestra cómo calcular la desviación estándar ponderada para una columna de un marco de datos en R:

biblioteca (Hmisc)

#define marco de datos
df <- datos. frame (equipo = c ('A', 'A', 'A', 'A', 'A', 'B', 'B', 'C'),
                 gana = c (2, 9, 11, 12, 15, 17, 18, 19),
                 puntos = c (1, 2, 2, 2, 3, 3, 3, 3))

#definir pesos
 wt <- c (1, 1, 1.5, 2, 2, 1.5, 1, 2)

#calcular la desviación estándar ponderada de puntos
 sqrt (wtd. var (df ​​$ points, wt))

[1] 0,6727938

La desviación estándar ponderada de la columna de puntos resulta ser 0,673 .

Ejemplo 3: Desviación estándar ponderada para varias columnas de marco de datos

El siguiente código muestra cómo usar la función sapply () en R para calcular la desviación estándar ponderada para múltiples columnas de un marco de datos:

biblioteca (Hmisc)

#define marco de datos
df <- datos. frame (equipo = c ('A', 'A', 'A', 'A', 'A', 'B', 'B', 'C'),
                 gana = c (2, 9, 11, 12, 15, 17, 18, 19),
                 puntos = c (1, 2, 2, 2, 3, 3, 3, 3))

#definir pesos
 wt <- c (1, 1, 1.5, 2, 2, 1.5, 1, 2)

# calcula la desviación estándar ponderada de los puntos y gana
 sapply (df [c (' gana ', ' puntos ')], función (x) sqrt (wtd. var (x, wt)))

     gana puntos 
4,9535723 0,6727938 

La desviación estándar ponderada para la columna de victorias es 4.954 y la desviación estándar ponderada para la columna de puntos es 0.673 .

Recursos adicionales

Cómo calcular la desviación estándar ponderada en Excel
Cómo calcular la desviación estándar en R
Cómo calcular el coeficiente de variación en R
Cómo calcular el rango en R

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Deja un comentario

La siguiente tabla muestra el área bajo la curva normal estándar a la izquierda de z. https://r-project.org https://www.python.org/ https://www.stata.com/
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!