La simulación ayuda a entender y validar las propiedades de los estimadores estadísticos como son: insesgadez, eficiencia y la consistencia principalmente. El siguiente problema permite evidenciar las principales características de un grupo de estimadores propuestos para la estimación de un parámetro asociado a un modelo de probabilidad.
Sean X1, X2, X3 y X4, una muestra aleatoria de tamaño n=4 cuya población la conforma una distribución exponencial con parámetro θ desconocido. Determine las características de cada uno de los siguientes estimadores propuestos: # DESARROLLO
Para cada uno de los estimadores planteados se genera una muestra de n = 20, 50, 100 y 1000. Para estas cuatro muestras se evalua insesgadez, eficiencia y consistencia de acuerdo con un parametro θ = 2.
# Carga de librerías si es necesario
# install.packages("ggplot2")
library(ggplot2)
theta <- 2 #Parametro definido
repeticiones <- 1000 #Numero de repeticiones en la simulación
tamanos_muestra <- c(20, 50, 100, 1000) #Tamaño de la muestra
#Inicialmente se definen las funciones para cada estimador:
estimador1 <- function(muestra) {
return((muestra[1] + muestra[2]) / 6 + (muestra[3] + muestra[4]) / 3)
}
estimador2 <- function(muestra) {
return((muestra[1] + 2 * muestra[2] + 3 * muestra[3] + 4 * muestra[4]) / 5)
}
estimador3 <- function(muestra) {
return((muestra[1] + muestra[2] + muestra[3] + muestra[4]) / 4)
}
estimador4 <- function(muestra) {
return((min(muestra) + max(muestra)) / 2)
}
#Una vez definidas las funciones de los estimadores, los tamaños en la muestra, la cantidad de repiticiones en la simulación y el parametro se almacenan los resultados en una tabla llamada resultado:
resultados <- data.frame(N = integer(), Estimador = character(), Media = numeric())
#A continuación se plantea la simulación para los diferentes tamaños de muestra definidos:
for (n in tamanos_muestra) {
for (i in 1:repeticiones) {
muestra <- rexp(4, rate = 1/theta) # Generar muestra exponencial
estimacion_1 <- estimador1(muestra)
estimacion_2 <- estimador2(muestra)
estimacion_3 <- estimador3(muestra)
estimacion_4 <- estimador4(muestra)
resultados <- rbind(resultados, data.frame(N = n, Estimador = "θ1ˆ", Media = estimacion_1))
resultados <- rbind(resultados, data.frame(N = n, Estimador = "θ2ˆ", Media = estimacion_2))
resultados <- rbind(resultados, data.frame(N = n, Estimador = "θ3ˆ", Media = estimacion_3))
resultados <- rbind(resultados, data.frame(N = n, Estimador = "θ4ˆ", Media = estimacion_4))
}
}
# Evaluar insesgadez
sesgo_medio <- aggregate(resultados$Media - theta, by = list(resultados$Estimador), mean)
print("Sesgo medio:")
## [1] "Sesgo medio:"
print(sesgo_medio)
## Group.1 x
## 1 θ1ˆ -0.01481404
## 2 θ2ˆ 1.97808582
## 3 θ3ˆ -0.01480408
## 4 θ4ˆ 0.33821533
# Evaluar eficiencia (Varianza)
varianza_estimaciones <- aggregate((resultados$Media - theta)^2, by = list(resultados$Estimador), mean)
print("Varianza de las estimaciones:")
## [1] "Varianza de las estimaciones:"
print(varianza_estimaciones)
## Group.1 x
## 1 θ1ˆ 1.1031988
## 2 θ2ˆ 8.7404137
## 3 θ3ˆ 0.9697657
## 4 θ4ˆ 1.7676062
# Generar boxplot con línea roja para representar el valor verdadero de θ
ggplot(resultados, aes(x = Estimador, y = Media)) +
geom_boxplot() +
geom_hline(yintercept = theta, color = "red", linetype = "dashed") +
labs(title = "Estimaciones de θ", x = "Estimador", y = "Valor estimado")
2.Para los estimadores θ1ˆ y θ3ˆ son sesgados ya que la media de la distribución esta por debajo del parametro; pero pueden llegar a ser insesgados al incrementar el numero de la muestra.