# Generar muestras de diferentes tamaños (n = 20, 50, 100, 1000)
n_values <- c(20, 50, 100, 1000)
# Definir el valor del parámetro desconocido
parametro <- 8
# Crear una función para calcular los estimadores
calcular_estimadores <- function(n, parametro) {
# Generar una muestra aleatoria de tamaño n
muestra <- rexp(n, rate = 1/parametro)
# Calcular los estimadores θ1, θ2, θ3 y θ4
estimador1 <- sum(muestra[1:4]) / sum(muestra[5:8])
estimador2 <- sum(muestra[1:4] * c(1, 2, 3, 4)) / 5
estimador3 <- sum(muestra[1:4]) / 4
estimador4 <- (min(muestra) + max(muestra)) / 2
# Calcular el sesgo, la eficiencia y la consistencia de los estimadores
sesgo1 <- mean(estimador1) - parametro
sesgo2 <- mean(estimador2) - parametro
sesgo3 <- mean(estimador3) - parametro
sesgo4 <- mean(estimador4) - parametro
var1 <- var(estimador1)
var2 <- var(estimador2)
var3 <- var(estimador3)
var4 <- var(estimador4)
# Calcular el sesgo, la eficiencia y la consistencia de los estimadores
eficiencia1 <- var1
eficiencia2 <- var2
eficiencia3 <- var3
eficiencia4 <- var4
consistencia1 <- mean((estimador1 - parametro)^2)
consistencia2 <- mean((estimador2 - parametro)^2)
consistencia3 <- mean((estimador3 - parametro)^2)
consistencia4 <- mean((estimador4 - parametro)^2)
# Crear un data frame con los resultados
resultados <- data.frame(
Tamaño_Muestra = n,
Estimador_1 = estimador1,
Estimador_2 = estimador2,
Estimador_3 = estimador3,
Estimador_4 = estimador4,
Sesgo_1 = sesgo1,
Sesgo_2 = sesgo2,
Sesgo_3 = sesgo3,
Sesgo_4 = sesgo4,
Eficiencia_1 = eficiencia1,
Eficiencia_2 = eficiencia2,
Eficiencia_3 = eficiencia3,
Eficiencia_4 = eficiencia4,
Consistencia_1 = consistencia1,
Consistencia_2 = consistencia2,
Consistencia_3 = consistencia3,
Consistencia_4 = consistencia4
)
return(resultados)
}
# Generar resultados para diferentes tamaños de muestra
resultados_n20 <- calcular_estimadores(20, parametro)
resultados_n50 <- calcular_estimadores(50, parametro)
resultados_n100 <- calcular_estimadores(100, parametro)
resultados_n1000 <- calcular_estimadores(1000, parametro)
# Crear un data frame con todos los resultados
todos_los_resultados <- rbind(resultados_n20, resultados_n50, resultados_n100, resultados_n1000)
# Mostrar los resultados y generar gráficos de caja
print(todos_los_resultados)
## Tamaño_Muestra Estimador_1 Estimador_2 Estimador_3 Estimador_4 Sesgo_1
## 1 20 0.631640 15.564041 10.348682 13.05602 -7.368360
## 2 50 1.378976 12.790746 7.228016 12.26739 -6.621024
## 3 100 2.535492 39.069178 18.123233 14.39845 -5.464508
## 4 1000 0.679644 8.345349 3.210976 19.11465 -7.320356
## Sesgo_2 Sesgo_3 Sesgo_4 Eficiencia_1 Eficiencia_2 Eficiencia_3
## 1 7.5640414 2.3486817 5.056016 NA NA NA
## 2 4.7907458 -0.7719841 4.267387 NA NA NA
## 3 31.0691776 10.1232326 6.398452 NA NA NA
## 4 0.3453487 -4.7890241 11.114649 NA NA NA
## Eficiencia_4 Consistencia_1 Consistencia_2 Consistencia_3 Consistencia_4
## 1 NA 54.29273 57.2147228 5.5163055 25.56329
## 2 NA 43.83796 22.9512454 0.5959594 18.21059
## 3 NA 29.86085 965.2937967 102.4798391 40.94019
## 4 NA 53.58761 0.1192657 22.9347519 123.53543
# Generar gráficos de caja con colores y etiquetas
boxplot(
todos_los_resultados[, c("Estimador_1", "Estimador_2", "Estimador_3", "Estimador_4")],
main = "Gráficos de Caja de Estimadores",
xlab = "Estimadores",
ylab = "Valores",
col = c("red", "blue", "green", "purple"), # Asignar colores a cada caja
names = c("Estimador θ1", "Estimador θ2", "Estimador θ3", "Estimador θ4") # Etiquetas para cada caja
)
# Observación: Para evaluar las propiedades de los estimadores, revisa los valores de sesgo, eficiencia y consistencia en los resultados.
En este ejercicio se puede concluir que con un parámetro igual a 0:
Si quieres consultar el codigó de este informe puedes validarlo en este enlace: