Propiedades de los estimadores

La simulación ayuda a entender y validad 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:

θ 1 ^ = X 1 + X 2 6 + X 3 + X 4 3

θ 2 ^ = ( X 1 + 2 X 2 + 3 X 3 + 4 X 4 ) 5

θ 3 ^ = X 1 + X 2 + X 3 + X 4 4

θ 4 ^ = min { X 1 , X 2 , X 3 , X 4 } + max { X 1 , X 2 , X 3 , X 4 } 2

library(ggplot2)
library(reshape2)

# Definimos las funciones para los estimadores
estimador1 <- function(x) { (x[1] + x[2]/6 + x[3] + x[4]/3) }
estimador2 <- function(x) { (x[1] + 2*x[2] + 3*x[3] + 4*x[4]) / 5 }
estimador3 <- function(x) { mean(x) }
estimador4 <- function(x) { (min(x) + max(x)) / 2 }

# Función para calcular sesgo, varianza y ECM
calcular_metricas <- function(estimaciones, theta) {
  sesgo <- mean(estimaciones) - theta
  varianza <- var(estimaciones)
  ecm <- mean((estimaciones - theta)^2)
  return(c(sesgo = sesgo, varianza = varianza, ecm = ecm))
}

theta <- 2  # Establecemos un valor para theta
n_simulaciones <- 1000  # Número de simulaciones
tamaños <- c(20, 50, 100, 500, 1000)  # Tamaños de muestra

# Preparamos un data frame para almacenar los resultados
resultados_df <- data.frame()

# Realizamos las simulaciones
for (n in tamaños) {
  for (i in 1:n_simulaciones) {
    muestra <- rexp(n, rate = 1/theta)
    estimaciones <- c(estimador1(muestra[1:4]), estimador2(muestra[1:4]), estimador3(muestra), estimador4(muestra[1:4]))
    metricas <- sapply(estimaciones, function(est) calcular_metricas(est, theta))
    
    for (j in 1:4) {
      resultados_df <- rbind(resultados_df, c(n, paste0('estimador', j), metricas[, j]))
    }
  }
}

# Ajustamos los nombres y tipos de las columnas
colnames(resultados_df) <- c('tamaño', 'estimador', 'sesgo', 'varianza', 'ecm')
resultados_df <- transform(resultados_df, tamaño = as.factor(tamaño), estimador = as.factor(estimador),
                           sesgo = as.numeric(sesgo), varianza = as.numeric(varianza), ecm = as.numeric(ecm))

# Generamos los gráficos
ggplot(resultados_df, aes(x = tamaño, y = sesgo, color = estimador)) +
  geom_line() +
  geom_point() +
  ggtitle("Sesgo de los Estimadores") +
  xlab("Tamaño de la muestra") +
  ylab("Sesgo")

ggplot(resultados_df, aes(x = tamaño, y = varianza, color = estimador)) +
  geom_line() +
  geom_point() +
  ggtitle("Varianza de los Estimadores") +
  xlab("Tamaño de la muestra") +
  ylab("Varianza")
## Warning: Removed 20000 rows containing missing values or values outside the scale range
## (`geom_line()`).
## Warning: Removed 20000 rows containing missing values or values outside the scale range
## (`geom_point()`).

ggplot(resultados_df, aes(x = tamaño, y = ecm, color = estimador)) +
  geom_line() +
  geom_point() +
  ggtitle("Error Cuadrático Medio de los Estimadores") +
  xlab("Tamaño de la muestra") +
  ylab("ECM")

El estimador 3 se acerca a cero a medida que aumenta el tamaño de la muestra, esto indica que el estimador asociado es insesgado o asintóticamente insesgado.

El estimador 1 se mantiene alejado de cero cuando el tamaño de la muestra aumenta, se evidencia que este estimador se encuentra sesgado.

Los estimadores 3 y 4 son consistentes pues la línea que representa su ECM se acerca a cero a medida que el tamaño de la muestra aumenta los estimadores 1 y 2 son mas inconsistentes pues las lineas que representan su ECM se alejan de sero en la medida que la muestra aumenta.