GET00130 - Métodos Computacionais para Estatística II
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.
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.