Este relatório tem como objetivo verificar, de forma empírica, o Teorema Central do Limite (TLC), utilizando amostras provenientes de duas distribuições conhecidas:
set.seed(123)
n_vals <- c(20, 50, 100, 200, 500)
n_amostras <- 1000
gerar_medias <- function(distrib, param, n_vals) {
medias_df <- map_dfr(n_vals, function(n) {
if (distrib == "exponencial") {
amostras <- replicate(n_amostras, mean(rexp(n, rate = param)))
} else if (distrib == "bernoulli") {
amostras <- replicate(n_amostras, mean(rbinom(n, 1, prob = param)))
}
tibble(media = amostras, n = n)
})
medias_df
}
medias_exp <- gerar_medias("exponencial", 1, n_vals)
medias_ber <- gerar_medias("bernoulli", 0.3, n_vals)
plotar_histograma <- function(df, media_pop, var_pop, titulo) {
densidades_df <- df %>%
group_by(n) %>%
summarise(
x = list(seq(min(media), max(media), length.out = 500)),
dens = list(dnorm(seq(min(media), max(media), length.out = 500),
mean = media_pop, sd = sqrt(var_pop / unique(n))))
) %>%
unnest(c(x, dens))
ggplot(df, aes(x = media)) +
geom_histogram(aes(y = after_stat(density)), bins = 30, fill = "lightblue", color = "black") +
geom_line(data = densidades_df, aes(x = x, y = dens), color = "red", linewidth = 1) +
facet_wrap(~n, scales = "free", labeller = label_both) +
labs(title = titulo, x = "Média Amostral", y = "Densidade") +
theme_minimal()
}
mu_exp <- 1; var_exp <- 1
mu_ber <- 0.3; var_ber <- 0.3 * 0.7
plotar_histograma(medias_exp, mu_exp, var_exp, "Exponencial(1)")
plotar_histograma(medias_ber, mu_ber, var_ber, "Bernoulli(0.3)")
library(moments)
testar_normalidade <- function(df, nome) {
df %>%
group_by(n) %>%
summarise(
media = mean(media),
.groups = "drop"
) %>%
mutate(distribuicao = nome)
}
resumo_exp <- testar_normalidade(medias_exp, "Exponencial(1)")
resumo_ber <- testar_normalidade(medias_ber, "Bernoulli(0.3)")
bind_rows(resumo_exp, resumo_ber)
## # A tibble: 10 × 3
## n media distribuicao
## <dbl> <dbl> <chr>
## 1 20 1.00 Exponencial(1)
## 2 50 0.997 Exponencial(1)
## 3 100 0.996 Exponencial(1)
## 4 200 1.00 Exponencial(1)
## 5 500 1.00 Exponencial(1)
## 6 20 0.296 Bernoulli(0.3)
## 7 50 0.297 Bernoulli(0.3)
## 8 100 0.301 Bernoulli(0.3)
## 9 200 0.301 Bernoulli(0.3)
## 10 500 0.299 Bernoulli(0.3)