Muestreo Estratificado en R: Asignación Proporcional y de Mínima Varianza para Estimar Talla y Peso de Salmones
Clasificado en Matemáticas
Escrito el en
español con un tamaño de 4,62 KB
Muestreo Estratificado en R: Asignación Proporcional y de Mínima Varianza
Carga de datos y definición de estratos
Salmon <- read.delim("clipboard")
Nh <- table(Salmon[,2])
N <- sum(Nh)
Wh <- Nh / N
n <- 30
nh <- n * Wh
nh <- c(10, 9, 11)
fh <- nh / Nh
A <- subset(Salmon, Piscigranja == 1)
B <- subset(Salmon, Piscigranja == 2)
C <- subset(Salmon, Piscigranja == 3)
Repartición de la muestra piloto
# Repartición de la muestra
set.seed(66)
Pm1 <- sample(1:Nh[1], nh[1])
APm1 <- A[Pm1, ]
set.seed(60)
Pm2 <- sample(1:Nh[2], nh[2])
BPm2 <- B[Pm2, ]
set.seed(50)
Pm3 <- sample(1:Nh[3], nh[3])
CPm3 <- C[Pm3, ]
Estimación de las varianzas
# Estimación de las varianzas
datosm <- rbind(APm1, BPm2, CPm3)
attach(datosm)
sh <- by(Talla, Piscigranja, sd) # Desviación estándar de la talla
s2h <- by(Talla, Piscigranja, var) # Varianza de la talla
s2h_peso <- by(Peso, Piscigranja, var) # Varianza del peso
Pregunta a): Tamaño de muestra con asignación proporcional
WhSh <- sum(Wh * sh)
WhS2h <- sum(Wh * s2h)
e <- 2
n <- 30
L <- 3
alfa <- 0.05
t <- qt(1 - alfa / 2, n - L)
n_prop <- ceiling(WhS2h / (e^2 / t^2 + WhS2h / N))
Pregunta b): Tamaño de muestra con asignación de mínima varianza
n_Varmin <- ceiling(WhSh^2 / (e^2 / t^2 + WhS2h / N))
Pregunta a): Asignación proporcional
Nh <- table(Salmon[,2])
N <- sum(Nh)
Wh <- Nh / N
n <- n_prop
nh <- n * Wh
nh <- c(14, 14, 15)
set.seed(66)
m1 <- sample(1:Nh[1], nh[1])
Am1 <- A[m1, ]
set.seed(60)
m2 <- sample(1:Nh[2], nh[2])
Bm2 <- B[m2, ]
set.seed(50)
m3 <- sample(1:Nh[3], nh[3])
Cm3 <- C[m3, ]
Pregunta b): Asignación de mínima varianza
n <- n_Varmin
nh <- n * Nh * sh / sum(Nh * sh)
nh <- c(14, 11, 17)
set.seed(66)
m1 <- sample(1:Nh[1], nh[1])
Am1_Min <- A[m1, ]
set.seed(60)
m2 <- sample(1:Nh[2], nh[2])
Bm2_Min <- B[m2, ]
set.seed(50)
m3 <- sample(1:Nh[3], nh[3])
Cm3_Min <- C[m3, ]
Pregunta a): Estimación de la media de talla
datosm3 <- rbind(Am1_Min, Bm2_Min, Cm3_Min) # Cuidado: toma los últimos valores
attach(datosm3)
ybarh_talla <- by(Talla, Piscigranja, mean) # Media de cada estrato (piscigranja)
ybarst_talla <- sum(Wh * ybarh_talla)
Pregunta b): Estimación del peso total
ybarh_peso <- by(Peso, Piscigranja, mean)
y_total <- sum(Nh * ybarh_peso) # Resultado en gramos
y_total / 1000 # Resultado en kilogramos
Pregunta c): Intervalo de confianza para la media de talla
fh <- nh / Nh
ybarst_talla <- sum(Wh * ybarh_talla)
vybarst <- sum(Wh^2 * s2h * (1 - fh) / nh) # Varianza de la media estimada
LI <- ybarst_talla - qnorm(1 - 0.06 / 2) * sqrt(vybarst)
LS <- ybarst_talla + qnorm(1 - 0.06 / 2) * sqrt(vybarst)
c(LI, LS)
Pregunta d): Intervalo de confianza para la media de peso
fh <- nh / Nh
ybarst_peso <- sum(Wh * ybarh_peso)
vybarst <- sum(Wh^2 * s2h_peso * (1 - fh) / nh) # Varianza de la media estimada
LI <- ybarst_peso - qnorm(1 - 0.06 / 2) * sqrt(vybarst)
LS <- ybarst_peso + qnorm(1 - 0.06 / 2) * sqrt(vybarst)
c(LI, LS)
Pregunta e): Intervalo de confianza para una proporción
ah <- table(Norma, Piscigranja)[2, ]
ph <- ah / nh
pst <- sum(Wh * ph) # Proporción estratificada estimada
vpst <- sum(Wh^2 * ph * (1 - ph) * (1 - fh) / (nh - 1))
LI <- pst - qnorm(1 - 0.06 / 2) * sqrt(vpst)
LS <- pst + qnorm(1 - 0.06 / 2) * sqrt(vpst)
c(LI, LS)