# 0. Configurações Iniciais
# setwd("C:/Users/Jefferson B. Bezerra/AREA DE TRABALHO/Documentos")
# 1. Parâmetros Fixos e Sequências
n_obs <- 28
n_sim <- 5000
# Definindo as sequências para a Normal
# 'desvios' substitui os 'betas' e 'medias' substitui os 'alfas'
desvios <- seq(from = 1, to = 20, by = 1) # Equivalente ao desvio padrão (sd)
medias <- seq(from = 0, to = 50, by = 5) # Equivalente à média (mean)
# 2. Inicializar o Banco de Dados Final
# Linhas = Desvios, Colunas = Médias
df_final <- data.frame(desvio_padrao = desvios)
# 3. Loop Externo: Variando a MÉDIA (Mu)
for (m in medias) {
cat("\n=== Processando MÉDIA:", m, "===\n")
# Vetor temporário para os D_criticos desta média específica
d_criticos_para_esta_media <- numeric(length(desvios))
# 4. Loop Intermediário: Variando o DESVIO PADRÃO (Sigma)
for (j in 1:length(desvios)) {
sd_atual <- desvios[j]
cat(" -> Desvio Padrão:", sd_atual, "\r")
# Vetor para os valores de D
todos_os_D_temporarios <- numeric(n_sim * n_obs)
# 5. Loop Interno: Simulações de Monte Carlo
for (i in 1:n_sim) {
# Geração de dados da Distribuição Normal
dados <- rnorm(n_obs, mean = m, sd = sd_atual)
dados_ord <- sort(dados)
ecdf_valores <- (1:n_obs) / n_obs
# CDF Teórica da Normal
cdf_teorica <- pnorm(dados_ord, mean = m, sd = sd_atual)
d_ponto_a_ponto <- abs(ecdf_valores - cdf_teorica)
inicio <- (i - 1) * n_obs + 1
fim <- i * n_obs
todos_os_D_temporarios[inicio:fim] <- d_ponto_a_ponto
}
# Armazena o quantil 95%
d_criticos_para_esta_media[j] <- quantile(todos_os_D_temporarios, 0.95)
rm(todos_os_D_temporarios)
}
# Adiciona os resultados desta média como uma nova coluna
df_final[[as.character(m)]] <- d_criticos_para_esta_media
gc() # Limpeza de memória
}
##
## === Processando MÉDIA: 0 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 5 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 10 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 15 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 20 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 25 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 30 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 35 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 40 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 45 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
## === Processando MÉDIA: 50 ===
## -> Desvio Padrão: 1 -> Desvio Padrão: 2 -> Desvio Padrão: 3 -> Desvio Padrão: 4 -> Desvio Padrão: 5 -> Desvio Padrão: 6 -> Desvio Padrão: 7 -> Desvio Padrão: 8 -> Desvio Padrão: 9 -> Desvio Padrão: 10 -> Desvio Padrão: 11 -> Desvio Padrão: 12 -> Desvio Padrão: 13 -> Desvio Padrão: 14 -> Desvio Padrão: 15 -> Desvio Padrão: 16 -> Desvio Padrão: 17 -> Desvio Padrão: 18 -> Desvio Padrão: 19 -> Desvio Padrão: 20
# 6. Resultado Final
print(head(df_final))
## desvio_padrao 0 5 10 15 20 25
## 1 1 0.1621896 0.1597781 0.1606446 0.1579849 0.1591933 0.1589534
## 2 2 0.1583944 0.1590758 0.1606548 0.1611577 0.1579750 0.1607632
## 3 3 0.1582648 0.1604191 0.1602323 0.1599161 0.1579625 0.1581401
## 4 4 0.1568283 0.1601369 0.1577895 0.1587327 0.1603626 0.1602556
## 5 5 0.1600156 0.1598423 0.1579384 0.1583831 0.1601983 0.1589703
## 6 6 0.1573985 0.1607322 0.1571169 0.1573326 0.1596772 0.1609801
## 30 35 40 45 50
## 1 0.1595564 0.1590959 0.1597796 0.1588392 0.1594015
## 2 0.1589235 0.1583445 0.1616950 0.1570810 0.1599325
## 3 0.1621215 0.1601888 0.1601310 0.1593092 0.1590581
## 4 0.1608365 0.1586099 0.1610125 0.1579150 0.1588624
## 5 0.1609655 0.1586508 0.1592011 0.1583398 0.1614986
## 6 0.1590518 0.1590009 0.1597896 0.1592943 0.1610567
# Salvar o arquivo consolidado
#write.csv(df_final, "tabela_D_criticos_Normal_4dias.csv", row.names = FALSE)
# View(df_final)
# 1. Encontrar o menor valor em todo o dataframe (exceto a primeira coluna)
menor_d_critico <- min(df_final[, -1])
# 2. Identificar em qual linha e coluna esse valor ocorre
posicao <- which(df_final[, -1] == menor_d_critico, arr.ind = TRUE)
# 3. Exibir o resultado formatado
cat("O menor valor de D_crítico encontrado foi:", menor_d_critico, "\n")
## O menor valor de D_crítico encontrado foi: 0.1564257
cat("Ele ocorre na linha", posicao[1,1], "e na coluna", colnames(df_final[,-1])[posicao[1,2]], "\n")
## Ele ocorre na linha 10 e na coluna 50