alt text

GET00130 - Métodos Computacionais para Estatística II

Jony Arrais Pinto Junior

Conteúdo da aula

  • Estimativa intervalar: intervalos de confiança.

1 - Intervalos de confiança

Ao realizarmos uma análise estatística, sempre será de interesse fornecer estimativas sobre parâmetros desconhecidos. Por exemplo, suponha que estamos estudando a renda dos moradores maiores de 18 anos de Niterói. No nosso problema, temos:

  • População: moradores do Rio de Janeiro maiores de 18 anos.

  • Variável: a renda (em reais) do morador.

  • Parâmetro de interesse: renda média dos moradores maiores de 18 anos de Niterói.

Fornecer somente uma estimativa pontual para a renda média dos moradores maiores de 18 anos de Niterói pode ser pouco informativo. Para fornecermos uma análise mais completa, é possível fornecermos uma estimativa intervalar.

1.1 - IC para a média de uma população normal com variância conhecida

Considere uma amostra aleatória simples $X_1, \ldots, X_n$ obtida de uma população normal com média $\mu$ e variância $\sigma^2$ conhecida.

Como \(\bar{X}\) é uma combinação linear de variáveis aleatórias normais, então \[\bar{X} \sim N\left(\mu, \frac{\sigma^2}{n}\right).\]

Sendo assim, ao padronizarmos a distribuição de \(\bar{X}\) temos que \[Z = \dfrac{\bar{X}-\mu}{\sigma/\sqrt{n}} \sim N(0,1).\]

Então, podemos escrever que \[\begin{equation} \tag{1} P[z_{\alpha/2} \leq Z \leq z_{1-\alpha/2}] = 1- \alpha, \end{equation}\] em que \(z_{\alpha/2}\) e \(z_{1-\alpha/2}\) são quantis da distribuição N(0,1) cuja área entre eles é de \(1-\alpha\). Além disso, a área abaixo de \(z_{\alpha/2}\) é \(\alpha/2\) e a área abaixo de \(z_{1-\alpha/2}\) é \(1-\alpha/2\), como está representado na figura abaixo.

Como \(Z = (\bar{X}-\mu)/(\sigma/\sqrt{n})\) tem distribuição normal padrão, podemos reescrever a Equação (1) da seguinte forma \[P \left[z_{\alpha/2} \leq \dfrac{\bar{X}-\mu}{\sigma/\sqrt{n}} \leq z_{1 - \alpha/2} \right] = 1- \alpha,\] com algumas operações algébricas \[P \left[\bar{X}+z_{\alpha/2}\frac{\sigma}{\sqrt{n}} \leq \mu \leq \bar{X}+z_{1-\alpha/2}\frac{\sigma}{\sqrt{n}} \right] = 1- \alpha.\]

Devemos notar que na equação acima, as extremidades é que são aleatórias, daí temos que \[IC(\mu,1-\alpha) = \left( \bar{X}+z_{\alpha/2}\frac{\sigma}{\sqrt{n}};\bar{X}+z_{1-\alpha/2}\frac{\sigma}{\sqrt{n}} \right).\]

Note que a distribuição N(0,1), onde os quantis \(z_{\alpha/2}\) e \(z_{1-\alpha/2}\) é simétrica, logo esses valores sempre serão iguais em módulo. Isto é, se \(\alpha = 0,05\), logo \(z_{1-0,05/2} = z_{0,975} = 1,96\) e o \(z_{0,05/2} = z_{0,025} = -1,96\), e neste caso a forma do intervalo de confiança seria \[IC(\mu;0,95) = \left( \bar{X}-1,96\frac{\sigma}{\sqrt{n}};\bar{X}+1,96\frac{\sigma}{\sqrt{n}} \right).\]

Como interpretar o IC obtido acima?

Como o que é aleatório é o intervalo, interpretamos o mesmo da seguinte forma: se fossem construídos 100 intervalos com amostras de mesmo tamanho, em torno de \(100(1-\alpha)\) intervalos conteriam o verdadeiro valor da média, isto é, existe \(100(1-\alpha)\%\) de chance do intervalo conter a verdadeira média.

alt text

A Figura acima, retirada do Morettin e Bussab (2006), exemplifica o que foi dito. Nela temos 20 intervalos de confiança para \(\mu\), todos de tamanho \(n\), com \(90\%\) de confiança. Deste modo, esperamos que em torno de \(90\%\) dos intervalos contenham o valor de \(\mu = 5\), isto é, que 18 intervalos contenham este valor.

Observação: NÃO existe a interpretação (um tanto comum de se ouvir) que a prababilidade da média estar no intervalo de confiança é de \(1-\alpha\). E por que não faz sentido isso? Veja que o intervalo construído ou contém ou não contém a média, porque o parâmetro de interesse é uma constante desconhecida, ou seja, ou o intervalo conterá esse valor ou não.

Vamos criar uma função no R que recebe um vetor numérico e retorna o IC para a média de uma distribuição normal com variância populacional conhecida.

#Criando uma função que calcula o IC para a média de uma população normal com variância conhecida
IC.media = function(x,conf,sigma){
  n = length(x)
  x.barra = mean(x, na.rm = TRUE)
  alfa = 1 - conf
  z = qnorm(p = 1 - alfa/2,
            mean = 0,
            sd = 1)
  LI = round(x.barra - z*sigma/sqrt(n),
             digits = 2)
  LS = round(x.barra + z*sigma/sqrt(n),
             digits = 2)
  cat("IC(média,",conf*100,"%):[",LI,";",LS,"]", sep="")
}

#Carregando o pacote tidyverse
library(tidyverse)

#Criando um tibble com o peso (em Kg) e o sexo dos indivíduos.
base = tibble(peso = c(68.5,80,73.4,100.2,97,60.5,82,95.7,58,74.6),
              sexo = c("F","M","F","M","M","F","M","M","F","F"))

#Calculando o intervalo de confiança para o peso médio supondo a variância 
#é de 225 kg ao quadrado
IC.media(x = base$peso,
         conf = 0.95,
         sigma = 15)
IC(média,95%):[69.69;88.29]

Atividade 1: Leia o arquivo base saude.txt e salve em um objeto chamado saude. Sabe-se que o código 9 foi utilizado para indicar valores faltantes.

Atividade 2: Calcule o IC par a média da variável Idade, assumindo que a variável em questão possui distribuição normal com variância 16.

Atividade 3: Melhore a função que calcula o IC para a média, isto é, faça com que ela retorne além da estimativa intervalar para idade, também retorne uma estimativa pontual e todas as estimativas fornecidas possuam 2 casas decimais.

1.2 - IC para a média de uma população normal com variância desconhecida

Considere uma amostra aleatória simples \(X_1, \ldots, X_n\) obtida de uma população normal com média \(\mu\) e variância \(\sigma^2\) desconhecida. Podemos obter o intervalo de confiança para a média partindo da seguinte distribuição amostral \[T = \dfrac{\bar{X}-\mu}{S/\sqrt{n}} \sim t_{(n-1)},\] em que \(S\) é o desvio padrão amostral. É possível checarmos esse resultado empiricamente.

Atividade 4: Verifique empiricamente que a distribuição de T ~ t(n-1). Assumindo n = 20 e \(\mu = 50\).

É possível derivarmos o intervalo de confiança para a média de uma população normal com variância desconhecida da distribuição acima, seguindo os passos da seção anterior. Deste modo, iremos obter \[IC(\mu,1-\alpha) = \left( \bar{X}-t_{(n-1);\alpha/2}\frac{s}{\sqrt{n}};\bar{X}+t_{(n-1);1-\alpha/2}\frac{s}{\sqrt{n}} \right),\] em que \(t_{(n-1);\alpha/2}\) e \(t_{(n-1);1-\alpha/2}\) são quantis da \(t\) com \(n-1\) graus de liberdade cuja área entre eles é de \(1-\alpha\). Além disso, a área abaixo de \(t_{(n-1);\alpha/2}\) é \(\alpha/2\) e a área abaixo de \(t_{(n-1);1-\alpha/2}\) é \(1-\alpha/2\).

Existem diversos pacotes no R que nos permitem calcular intervalos de confiança para a média de uma população com variância desconhecida. Aqui, iremos explorar a função ci.mean do pacote Publish.

A seguir, vamos apresentar os principais argumentos da função ci.mean:

  - x - o vetor com os valores da amostra;

  - \(\alpha\) - o complementar do nível de confiança (default = 0.05);

  - na.rm - um operador lógico indicando se deseja desconsiderar os valores faltantes (default = TRUE).

#Carregando o pacote
library(Publish)

#Calculando o intervalo de confiança para o peso médio assumindo que a variância populacional é desconhecida
ci.mean(x = base$peso,
        alpha = 0.05,
        na.rm = TRUE)
 mean  CI-95%       
 78.99 [68.31;89.67]

Podemos notar que a função nos retorna uma estimativa pontual e uma estimativa intervalar com base em um nível de confiança de \(95\%\).

Suponha que você deseje calcular uma estimativa intervalar para várias subpopulações, por exemplo, calcular um intervalo de confiança para o peso médio por sexo.

#Calculando o intervalo de confiança para o peso médio por sexo assumindo que a variância populacional é desconhecida
res = ci.mean(x = peso ~ sexo,
        alpha = 0.05,
        na.rm = TRUE,
        data = base)

#Visualizando o objeto res
res
 sexo mean  CI-95%        
 F    67.00 [57.70;76.30] 
 M    90.98 [79.45;102.51]

Podemos plotar as estimativas pontuais

#Visualizando o objeto res
plot(res, title.labels = "Sexo")

1.3 - Intervalo de confiança para a proporção

Seja o intervalo de confiança para a proporção populacional dado por \[IC(p,1-\alpha) = \left( \hat{p} - z_{\alpha/2} \sqrt{\frac{ \hat{p} (1-\hat{p} ) }{n}};\hat{p} + z_{\alpha/2}\sqrt{\frac{\hat{p} (1-\hat{p} )}{n}} \right).\]

Existem diversos pacotes no R que nos permitem calcular intervalos de confiança para a proporção de uma população. Aqui, iremos explorar a função binom.confint do pacote binom.

A seguir, vamos apresentar os principais argumentos da função binom.confint:

  - x - o número de indivíduos com a característica de interesse;

  - n - o tamanho da amostra;

  - conf.level - o nível de confiança (default = 0.95);

  - methods - o método a ser usado (use o método asymptotic para calcular o intervalo exibido acima).

Vamos calcular uma estimativa intervalar para a proporção de pessoas com peso acima de 80 Kg na população?

#Criando a variável que indica se o indivíduo pesa mais do que 75 Kg

peso_75 = if_else(base$peso >80, 1, 0)

#Carregando o pacote binom
library(binom)

#Calculando o intervalo otmista para a proporção de pessoas com mais de 80 kg na população
binom.confint(x = sum(peso_75),
              n = length(peso_75),
               methods = "asymptotic")
      method x  n mean      lower     upper
1 asymptotic 4 10  0.4 0.09636369 0.7036363

O que podemos falar sobre a amplitude do intervalo obtido? Parece grande? Por que?

Atividade 5: Crie uma função que calcula o intervalo de confiança conservador para a proporção populacional.

1.4 - Intervalo de confiança para a variância de uma população normal

Considere uma amostra aleatória simples \(X_1, \ldots, X_n\) obtida de uma população normal com média \(\mu\) e variância \(\sigma^2\). Sabemos que um estimador para \(\sigma^2\) é a variância amostral \(S^2\). Sabemos também que \[Q = \frac{(n-1)S^2}{\sigma^2} \sim \chi^2_{n-1}.\]

Então, podemos escrever que \[P[q_{\alpha/2} \leq Q \leq q_{1-\alpha/2}] = 1- \alpha,\] ou seja, \[P \left[q_{\alpha/2} \leq \frac{(n-1)S^2}{\sigma^2} \leq q_{1-\alpha/2} \right] = 1- \alpha,\] com algumas operações algébricas \[P \left[ \frac{(n-1)S^2}{q_{1-\alpha/2}} \leq \sigma^2 \leq \frac{(n-1)S^2}{q_{\alpha/2}} \right] = 1- \alpha.\]

Temos que \[IC(\sigma^2,1-\alpha) = \left( \frac{(n-1)S^2}{q_{1-\alpha/2}};\frac{(n-1)S^2}{q_{\alpha/2}} \right).\]

Existem diversos pacotes no R que nos permitem calcular intervalos de confiança para a variância de uma população normal. Aqui, iremos explorar a função VarCI do pacote DescTools.

A seguir, vamos apresentar os principais argumentos da função VarCI:

  - x - um vetor com os dados;

  - method - o método utilizado para calcular o intervalo (use o método classic);

  - conf.level - o nível de confiança (default = 0.95).

Vamos obter uma estimativa intervalar para a variância da estatura da população (a variável se encontra no arquivo base saúde)?

#Carregando o pacote DescTools
library(DescTools)

#Calculando o IC para a variância de uma população normal
VarCI(x = saude$Estatura,
      method = "classic",
      conf.level = 0.97)
     var   lwr.ci   upr.ci 
5117.444 3097.292 9892.459 

Atividade 6: Leia o arquivo cafe.rds. Suponha que o peso dos cafés tem distribuição normal. Calcule o IC para o peso médio dos pacotes do café, para a variância do peso dos pacotes de café e para a proporção de pacotes com peso superior a 500 g.