knitr::opts_chunk$set(echo = TRUE,comment = NA)
set.seed(123)

Estimación boostrap



Cuando se extrae una muestra de una población que no es normal y se requiere estimar un intervalo de confianza se pueden utilizar los métodos de estimación bootstrap. Esta metodología supone que se puede reconstruir la población objeto de estudio mediante un muestreo con reemplazo de la muestra que se tiene. Existen varias versiones del método. Una presentación básica del método se describe a continuación:

El artículo de In-use Emissions from Heavy Duty Dissel Vehicles (J.Yanowitz, 2001) presenta las mediciones de eficiencia de combustible en millas/galón de una muestra de siete camiones. Los datos obtenidos son los siguientes: 7.69, 4.97, 4.56, 6.49, 4.34, 6.24 y 4.45. Se supone que es una muestra aleatoria de camiones y que se desea construir un intervalo de confianza del 95 % para la media de la eficiencia de combustible de esta población. No se tiene información de la distribución de los datos. El método bootstrap permite construir intervalos de confianza del 95 % - Para ilustrar el método suponga que coloca los valores de la muestra en una caja y extrae uno al azar. Este correspondería al primer valor de la muestra bootstrap X∗1. Después de anotado el valor se regresa X∗1 a la caja y se extrae el valor X∗2, regresandolo nuevamente. Este procedimiento se repite hasta completar una muestra de tamaño n, X∗1,X∗2,X∗2,X∗n conformando la muestra bootstrap.

Es necesario extraer un gran número de muestras (suponga k = 1000). Para cada una de las muestra bootstrap obtenidas se calcula la media X∗i¯, obteniéndose un valor para cada muestra. El intervalo de confianza queda conformado por los percentiles P2.5 y P97.5. Existen dos métodos para estimarlo:

Construya el intervalo de confianza por los dos métodos y compare los resultados obtenidos. Comente los resultados. Confiaría en estas estimaciones?

#definir parametros
datos_c <- c(7.69, 4.97, 4.56, 6.49, 4.34, 6.24, 4.45)
k<- 1000 #muestras

medias_bootstrap <- replicate(k, mean(sample(datos_c, replace = TRUE)))

# Percentiles 2.5% y 97.5% para el primer método
percentiles <- quantile(medias_bootstrap, probs = c(0.025, 0.975))

# Primer método: (P2.5, P97.5)
ic1 <- c(percentiles[1], percentiles[2])
print(paste("Intervalo de confianza del 95% (Método 1):", ic1[1], "-", ic1[2]))
[1] "Intervalo de confianza del 95% (Método 1): 4.74839285714286 - 6.50864285714286"

Análisis Método 1: Este método utiliza directamente los percentiles de las medias bootstrap para construir el intervalo de confianza. Este resultado indica que la media de la eficiencia de combustible para la poblacion se encuentra entre 4.7484 y 6.5086 millas por galón. En donde el valor mas bajo indica que el 2.5% de las medias calculadas eran iguales o menores a este valor y el valor mas alto en el intervalo, el percentil 97.5% de las medias calculadas eran iguales o menores a este valor.

# Segundo método: (2*mean(datos) - P97.5, 2*mean(datos) - P2.5)
media_muestra <- mean(datos_c)
ic2 <- c(2*media_muestra - percentiles[2], 2*media_muestra - percentiles[1])
print(paste("Intervalo de confianza del 95% (Método 2):", ic2[1], "-", ic2[2]))
[1] "Intervalo de confianza del 95% (Método 2): 4.55992857142857 - 6.32017857142857"

Análisis Método 2: Este método ajusta los percentiles utilizando la media de la muestra original, lo que puede proporcionar un intervalo más centrado alrededor de la media muestral.

El resultado obtenido indica que el intervalo de confianza se encuentra entre 4.5599 y 6.3202 millas por galón. En comparación con el método 1 el intervalo del método 2 es mas estrecho y mas cercano a la media muestral lo cual puede indicar que tiene una mayor precision en la estimación dando un intervalo de confianza del 95%.