Hola usuario de nuestro sitio web, tenemos la respuesta a tu pregunta, has scroll y la obtendrás aquí.
Solución:
R proporciona la media ponderada. De hecho, ?weighted.mean muestra este ejemplo:
## GPA from Siegel 1994
wt <- c(5, 5, 4, 1)/15
x <- c(3.7,3.3,3.5,2.8)
xm <- weighted.mean(x, wt)
Un paso más:
v <- sum(wt * (x - xm)^2)
El paquete Hmisc contiene las funciones que necesita.
De este modo:
x <- c(3.7,3.3,3.5,2.8)
wt <- c(5, 5, 4, 1)/15
xm <- wtd.mean(x, wt)
var <- wtd.var(x, wt)
sd <- sqrt(var)
Desafortunadamente, el autor del paquete Hmisc no incluyó un explícito wtd.sd
función. Tienes que hacer raíz cuadrada wtd.var.
Carlos Kangai
yo tambien recibo errores de Hmisc
al usar el wtd.var()
función. Afortunadamente, SDMTools
tiene una funcionalidad comparable, e incluso calcula SD directamente para usted, sin necesidad de tomar sqrt de varianza.
library(SDMTools)
x <- c(3.7,3.3,3.5,2.8)
wt <- c(5, 5, 4, 1)/15 ## Note: no actual need to normalize weights to sum to 1, this will be done automatically.
wt.mean(x, wt)
wt.sd(x,wt)
wt.var(x, wt)
Acuérdate de que puedes optar por la opción de comentar si te fue de ayuda.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)