## Objetivos específicos # a) Gerar uma população normal; ## b) Amostrar repetidamente pares de amostras de tamanhos informados ## da população
## c) Estimar a variância a partir de cada amostra e calcular a razão ## entre as duas de cada par armazenando estes valores em um vetor.
## d) Usar este vetor para decidir, sob a distribuição F, se as ## razões anteriormente obtidas podem ser consideradas, ou não, como
## provenientes de uma mesma população, adotando um erro tipo I
## máximo para a inferência. ## Em outras palavras, o objetivo maior é ilustrar a flutuação ## normal do processo de amostragem e os possíveis erros de decisão
## na inferência influenciados por esta flutuação.
##=============================================================================== ##-- Ini opções ----------------------------------------------------------------- ## Tamanho das amostras n1 <- 5 # Tamanho da amostra (n1) n2 <- 50 # Tamanho da amostra (n2) ## Características da população Mu <- 10 Sigma <- 2 ## Número de pares de amostras n <- 1e4 # Usar 1e2, 1e3, ..., 1e5 erro <- 5 # Define erro tipo I máximo a ser usado na inferência # (informado em %) ##-- Fim opções ----------------------------------------------------------------- ## Simulação ## Estimativas da variância a partir do tamanho n1 s2.n1 <- apply(matrix(rnorm(n * n1, Mu, Sigma), ncol=n1), 1, var) ## Estimativas da variância a partir do tamanho n2 s2.n2 <- apply(matrix(rnorm(n * n2, Mu, Sigma), ncol=n2), 1, var) Fcal <- s2.n1 / s2.n2 # Valores da razão entre duas estimativas da variância # de uma população normal observados ## Valor Ftab recebe valor limite da calda superior da distribuição Fi ## adotando erro tipo I máximo especificado = erro Ftab <- qf(erro / 100, n1-1, n2-1, lower.tail=FALSE) ## Inferência dec <- Fcal < Ftab # Decisão: As amostras podem ser consideradas como # provenientes de uma mesma população? dec.cer <- length(dec[dec == TRUE]) dec.err <- n - dec.cer # Plotar gráfico dos resultados observados plot(Fcal, ylab='Valores F calculados', xlab='Número de pares de amostras', font=2, font.lab=2, cex=0.5, col='dark orange', ylim=c(0, 10)) tab.inf <- parse(text=paste(paste('F[', erro, '~"%"]',sep=''), '(', n1 - 1, ', ', n2 - 1, ')==', round(Ftab, 2), sep='')) abline(h=Ftab) text(n/2, Ftab, tab.inf, font=4, col='dark blue') text(n/2, Ftab/2, paste('RAHo -> Decisões Corretas (%)', 100 * (dec.cer/n), sep=' = '), font=4, col='dark green') text(n/2, Ftab + (max(Fcal) - Ftab)/2, paste('RRHo -> Decisões Equivocadas (%)', 100 * (dec.err/n), sep=' = '), font=4, col='red')