Contenido
- Ejercicio 3 (Normal): media eficiente, varianza muestral, ejemplo de estimador insesgado pero ineficiente e insuficiente.
- Ejercicio 5 (Binomial): ECM de \(T_1\) y \(T_2\), comparación gráfica y consistencia.

set.seed(123)
op <- par(no.readonly = TRUE)
on.exit(par(op))
suppressPackageStartupMessages({
  library(ggplot2)
  library(dplyr)
  library(tidyr)
  library(gridExtra)
})
theme_set(theme_minimal(base_size = 14))

Ejercicio 3 — Pelotas de tenis (Normal)

Datos del enunciado (diámetros en cm):

x <- c(6.33, 6.37, 6.36, 6.32, 6.37)
n <- length(x)
x
## [1] 6.33 6.37 6.36 6.32 6.37

(a) Estimador eficiente de la media \(\mu\): \(\bar X\)

xbar <- mean(x)
S2   <- var(x)         # divisor n-1
S    <- sd(x)
data.frame(n, xbar, S2, S)
##   n xbar      S2          S
## 1 5 6.35 0.00055 0.02345208

Respuesta: \(\bar X = 6.35 cm\).
En Normal, \(\bar X\) alcanza la cota de Cramér–Rao para \(\mu\)eficiente.

Visualizaciones rápidas

# Histograma con la media
df <- data.frame(x=x)
p1 <- ggplot(df, aes(x=x)) +
  geom_histogram(bins=5, fill="grey70", color="white") +
  geom_vline(xintercept = xbar, linetype="dashed") +
  labs(title="Diámetros observados", x="cm")

# Diagrama de caja
p2 <- ggplot(df, aes(y=x, x=factor(1))) +
  geom_boxplot(width=.3, fill="grey80") +
  geom_point(position=position_jitter(width=.05), alpha=.7) +
  labs(title="Boxplot", x=NULL, y="cm")

grid.arrange(p1, p2, ncol=2)

(b) ¿\(S^2\) es eficiente para \(\sigma^2\)?

En Normal con \(\mu\) desconocida:
\((n-1)S^2/\sigma^2 \sim \chi^2_{n-1}\),
\(\mathbb E(S^2)=\sigma^2\), \(\mathrm{Var}(S^2)=2\sigma^4/(n-1)\) (alcanza CRLB) ⇒ sí, es eficiente.

Con los datos: \(S^2 = 5.5\times 10^{-4}\) cm\(^2\).

(c) Insesgado pero ineficiente

T_insesg_inef <- mean(x[1:2])  # usa 2 de 5 datos
T_insesg_inef
## [1] 6.35

Este estimador es insesgado para \(\mu\) pero su varianza es \(\sigma^2/2\) (mayor que \(\sigma^2/5\) de \(\bar X\)).

(d) Insuficiente

T_insuf <- x[1]
T_insuf
## [1] 6.33

\(T=X_1\) no es función de \((\bar X, S^2)\)no es suficiente.

(Bonus) Simulación: eficiencia de \(\bar X\) vs usar 2 datos

set.seed(1)
mu  <- xbar; sigma <- S    # aproximamos con params muestrales
R   <- 20000

xbar_R <- tapply(rnorm(R*5, mu, sigma), rep(1:R, each=5), mean)
t2_R   <- rowMeans(matrix(rnorm(R*2, mu, sigma), ncol=2))

data.frame(
  Var_xbar = var(xbar_R),
  Var_t2   = var(t2_R)
)
##      Var_xbar       Var_t2
## 1 0.000110105 0.0002779199

\(\mathrm{Var}(\bar X)\) < \(\mathrm{Var}(\text{promedio de 2})\)\(\bar X\) más preciso.


Ejercicio 5 — Binomial \(X\sim\text{Bin}(n,p)\)

\[ T_1=\frac{X}{n},\qquad T_2=\frac{X+1}{n+2}. \]

(a) Errores cuadráticos medios

Recordatorio: \(\mathrm{ECM}(T)=\mathrm{Var}(T)+\mathrm{Bias}(T)^2\).

\[ \mathrm{ECM}(T_1)=\frac{p(1-p)}{n},\qquad \mathrm{ECM}(T_2)=\frac{n\,p(1-p)+(1-2p)^2}{(n+2)^2}. \]

Gráfico comparativo para distintos \(n\).

ECM_T1 <- function(n,p) p*(1-p)/n
ECM_T2 <- function(n,p) (n*p*(1-p) + (1-2*p)^2) / (n+2)^2

grid_p <- seq(0,1,length.out=201)
ns <- c(10, 30, 100)

plots <- lapply(ns, function(n){
  df <- data.frame(
    p = grid_p,
    ECM_T1 = ECM_T1(n, grid_p),
    ECM_T2 = ECM_T2(n, grid_p)
  ) |>
    tidyr::pivot_longer(-p, names_to="Est", values_to="ECM")
  ggplot(df, aes(p, ECM, linetype=Est)) +
    geom_line() +
    labs(title=paste("ECM vs p  (n =", n, ")"),
         y="ECM", x="p") +
    scale_linetype_discrete(labels=c("T1 = X/n","T2 = (X+1)/(n+2)"))
})
gridExtra::grid.arrange(grobs=plots, ncol=3)

Lectura:
- Para \(n\) grande, \(T_1\) domina (menor ECM).
- Para \(n\) chico y \(p\) cerca de 0 o 1, \(T_2\) puede mejorar por el suavizado (bias útil).

(b) Consistencia de \(T_1\)

\[ T_1=\frac{X}{n}\xrightarrow{p}p\quad(\text{LGN}),\ \ \mathrm{Var}(T_1)=\frac{p(1-p)}{n}\to 0. \]

Simulación ilustrativa:

set.seed(2)
p_true <- 0.3
ns <- c(10, 30, 100, 300, 1000)
R  <- 5000

res <- lapply(ns, function(n){
  t1 <- replicate(R, rbinom(1, size=n, prob=p_true)/n)
  data.frame(n=n, media=mean(t1), var=var(t1))
}) |> dplyr::bind_rows()

res
##      n     media          var
## 1   10 0.3009000 0.0216535207
## 2   30 0.3018067 0.0069961352
## 3  100 0.3002120 0.0020846520
## 4  300 0.2999693 0.0006915551
## 5 1000 0.2998904 0.0002139488

Gráfico: \(\mathrm{Var}(T_1)\) decrece con \(n\) y la media se acerca a \(p\).

ggplot(res, aes(n, var)) + geom_line() + geom_point() +
  labs(title="Varianza de T1 cae como 1/n", y="Var(T1)", x="n")