La simulación ayuda a entender y validar las propiedades de los estimadores estadísticos, como son la 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. A continuación, se determinan las características de cada uno de los siguientes estimadores propuestos:
θ1ˆ = (X1 + X2)/6 + (X3 + X4) / 3
θ2ˆ = (X1 + 2X2 + 3X3 + 4X4) / 5
θ3ˆ = (X1 + X2 + X3 + X4) / 4
θ4ˆ = (min{X1, X2, X3, X4} + max{X1, X2, X3, X4}) / 2
Estos estimadores se utilizan para estimar el parámetro θ en una distribución exponencial. Cada uno de ellos tiene sus propias características y propiedades que pueden ser analizadas mediante simulación y cálculos estadísticos.
Para evaluar cada uno de los estimadores planteados, se comenzará con una muestra de 20, con lo que se obtienen los siguientes resultados:
## Número de muestra: 20
## Mediana theta 1: 1.17 y varianza: 1.03
## Mediana theta 2: 2.29 y varianza: 4.2
## Mediana theta 3: 1.21 y varianza: 0.81
## Mediana theta 4: 1.75 y varianza: 0.91
A partir de los resultados, se puede decir que con una muestra de 20, el estimador theta 4 es el menos sesgado, aunque todos muestran rasgos de sesgo.
## Número de muestra: 50
## Mediana theta 1: 1.85 y varianza: 1.93
## Mediana theta 2: 3.5 y varianza: 8.05
## Mediana theta 3: 1.96 y varianza: 1.49
## Mediana theta 4: 2.04 y varianza: 2.03
Al pasar a una muestra de 50, el estimador theta 4 es consistente, siendo insesgado y eficiente. Igualmente, el estimador theta 3 es insesgado y eficiente. El estimador theta 1 también converge hacia el valor esperado.
## Número de muestra: 100
## Mediana theta 1: 1.58 y varianza: 1.76
## Mediana theta 2: 3.06 y varianza: 7.87
## Mediana theta 3: 1.69 y varianza: 1.3
## Mediana theta 4: 1.86 y varianza: 1.59
Con una muestra de 100, el estimador theta 3 es el de menor varianza, lo cual lo haría más eficiente, sin embargo, el estimador theta 4 sigue siendo el menos sesgado. Por otro lado, el estimador theta 2 permanece siendo sesgado e ineficiente.
## Número de muestra: 1000
## Mediana theta 1: 1.66 y varianza: 1.75
## Mediana theta 2: 3.24 y varianza: 7.5
## Mediana theta 3: 1.75 y varianza: 1.35
## Mediana theta 4: 1.87 y varianza: 1.62
Con una muestra de 1000 datos, se comprueba lo dicho para la muestra de 100, el estimador theta 4 es el más insesgado, aunque no tan eficiente como el estimador theta 3. Los cuales serían los mejores. El estimador theta 1 tiene una varianza más alta y no se acerca al valor esperado tampoco, aunque no presenta diferencias tan altas como lo presenta el estimador theta_2.
muestras <- function(m) {
set.seed(123)
lamda <- 0.5
x1 <- rexp(m,lamda)
x2 <- rexp(m,lamda)
x3 <- rexp(m,lamda)
x4 <- rexp(m,lamda)
db <- data.frame(x1,x2,x4,x4)
return(db)
}
# Estimador θ1
theta1 <- function(X) {
return((sum(X[1:2]) / 6) + (sum(X[3:4]) / 3))
}
# Estimador θ2
theta2 <- function(X) {
return((sum(X * c(1, 2, 3, 4))) / 5)
}
# Estimador θ3
theta3 <- function(X) {
return(sum(X) / 4)
}
# Estimador θ4
theta4 <- function(X) {
return((min(X) + max(X)) / 2)
}
grafica <- function(m) {
library(ggplot2)
db <- muestras(m)
theta_1= apply(db, 1, theta1)
theta_2= apply(db, 1, theta2)
theta_3= apply(db, 1, theta3)
theta_4= apply(db, 1, theta4)
estimadores <- data.frame(theta_1,theta_2, theta_3, theta_4)
Sys.setlocale("LC_CTYPE", "es_ES.UTF-8")
titulo <- sprintf("Comparación estimadores con n=%d", m)
boxplot(estimadores, las=1, main=titulo) # gráfico de comparación
abline(h=2, col="red")
#Imprimir resultados
cat("Número de muestra:", m, "\n")
cat("Mediana theta 1:", round(median(estimadores$theta_1),2), "y varianza:", round(var(estimadores$theta_1),2), "\n")
cat("Mediana theta 2:", round(median(estimadores$theta_2),2), "y varianza:", round(var(estimadores$theta_2),2), "\n")
cat("Mediana theta 3:", round(median(estimadores$theta_3),2), "y varianza:", round(var(estimadores$theta_3),2), "\n")
cat("Mediana theta 4:", round(median(estimadores$theta_4),2), "y varianza:", round(var(estimadores$theta_4),2), "\n")
}