Referência: Johnson e Wichern, Cap. 4 setembro de 2011 Alguns métodos de Inferência Estatística partem do pressuposto de normalidade dos dados. A qualidade das inferências feitas por estes métodos depende de quão próxima é a população em estudo da normal multivariada. Procedimentos para verificação de dados que apresentam desvios da suposição de normalidade se fazem necessários. PROBLEMA: As observações Xi parecem violar a suposição de normalidade? Estratégia – verificar se: as distribuições marginais univariadas do vetor aleatório parecem normais; os diagramas de dispersão das variáveis tomadas duas a duas têm uma aparência elíptica; existem observações discrepantes (outliers) que mereçam ser analisadas. Avaliação da normalidade das distribuições marginais Histogramas para tamanhos amostrais superiores ou iguais a 25 podem revelar situações nas quais uma cauda da distribuição seja mais pesada do que a outra. Se o histograma para a j-ésima componente do vetor de observações parece razoavelmente simétrico, podemos verificar a normalidade calculando a proporção de valores que caem em determinados intervalos comparando-a com a proporção esperada sob normalidade. (teste de aderência de qui-quadrado) Avaliação da normalidade das distribuições marginais Por exemplo, numa distribuição normal univariada a probabilidade de um valor cair no intervalo centrado na média de comprimento igual a dois desvios padrão é cerca de 68%; a probabilidade de um valor cair no intervalo centrado na média de comprimento igual a 4 desvios padrão é cerca de 95%; etc. Assim, se observarmos proporções amostrais muito diferentes do que se espera no caso da normal, a hipótese de normalidade deve ser descartada. Gráficos são sempre ferramentas úteis em qualquer análise de dados. Gráficos especiais são os chamados gráficos quantil-quantil (Q-Q plots) que podem ser usados para avaliar a suposição de normalidade. Gráficos quantil-quantil (Q-Q plots) Construídos a partir das distribuições marginais de cada componente do vetor p-variado. São de fato um gráfico do quantil amostral versus o quantil esperado sob normalidade. Podem ser usados para validar outras distribuições diferentes da normal. Quando a configuração de pontos no gráfico se aproxima de uma reta, a suposição de normalidade é sustentável. A normalidade é suspeita se houver pontos que se desviam do comportamento linear. A forma como os pontos se desviam do comportamento linear pode fornecer pistas sobre a natureza da não normalidade das observações. Conhecida a razão da não normalidade dos dados, ações corretivas podem ser tomadas: transformações visando normalizar os dados ou uso de técnicas para dados não normais. PASSOS NA CONSTRUÇÃO DO Q-Q plot Ordenar os n valores observados da j-ésima componente do vetor aleatório. x x( 2) ... x(n) as observações ordenadas. Os Sejam (1) x(i )‘s são os quantis amostrais (i=1,2,...,n). Se todos os quantis amostrais são distintos entre si, então exatamente i observações são menores ou iguais a x(i ) A proporção i/n da amostra à esquerda de x(i) é frequentemente aproximada para (i-0,5)/n por conveniência analítica (é uma correção de continuidade). PASSOS NA CONSTRUÇÃO DO Q-Q plot Para uma distribuição normal padrão, podemos obter os quantis q(i) tais que P(Z≤ q(i))=(i-0,5)/n, i=1,...,n. A idéia será olhar os pontos (q(i),x(i)) com a mesma probabilidade acumulada (i-0,5)/n. Se os dados provêm de uma normal, os pares serão aproximadamente linearmente relacionados, pois o quantil esperado sob normalidade é aproximadamente σ q(i)+μ, com σ representando o desvio-padrão e μ a média da distribuição. Usando o R para a construção do Q-Q plot No R temos a função ppoints(n) que gera o vetor de valores (i-0,5)/n, para i variando de 1 a n. Para gerar os quantis esperados sob normalidade usaremos a função qnorm(p), que retorna o quantil cuja probabilidade acumulada é p. Quando não especificamos nada além de p, o R retorna quantis da N(0,1). A função usada para ordenar um vetor de números no R é a função sort(x). Construção do Q-Q plot das medidas do conjunto de dados crabs do pacote MASS Carregue o pacote MASS. Digite data(crabs). Os dados estão organizados de tal modo que as colunas de 4 a 8 representam medidas morfológicas de caranguejos de duas espécies (linhas 1 a 100 uma espécie, 101 a 200 a outra). Também há a divisão por gênero - macho (M) e fêmea (F) - tal que as 50 primeiras linhas de cada espécie são do gênero M e, as restantes, do gênero F. Vamos construir 20 gráficos quantil-quantil representando cada uma das 5 medidas dos 4 grupos caracterizados por espécie e gênero. Construção do Q-Q plot das medidas do conjunto de dados crabs do pacote MASS Como n=50 em cada grupo espécie e gênero, faça prop=ppoints(50) Calcule o vetor de quantis esperados sob normalidade: quantilesp=qnorm(prop) Ordene os valores observados: x1=sort(crabs[1:50,4]) Construa o gráfico: plot(quantilesp,x1). Para que os 20 gráficos fiquem numa única página use a função par(mfrow=c(4,5)) Avaliação da normalidade das distribuições marginais Uma medida quantitativa para auxiliar na avaliação do Q-Q plot é calcular a correlação rQ entre os quantis esperados e o vetor observado ordenado. A hipótese de normalidade é rejeitada ao nível de significância α se rQ obtido for menor que um valor apropriado. Por exemplo, ao nível de significância de 5% e amostras de tamanho 50, a hipótese deve ser rejeitada se rQ for inferior a 0,9768. Tabela: Pontos críticos para o teste de normalidade usando o coeficiente de correlação do Q-Q plot nível de significância Tamanho da amostra n 0,01 0,05 0,1 5 0,8299 0,8788 0,9032 10 0,8801 0,9198 0,9351 15 0,9126 0,9389 0,9503 20 0,9269 0,9508 0,9604 25 0,941 0,9591 0,9665 30 0,9479 0,9652 0,9715 35 0,9538 0,9682 0,974 40 0,9599 0,9726 0,9771 45 0,9632 0,9749 0,9792 50 0,9671 0,9768 0,9809 55 0,9695 0,9787 0,9822 60 0,972 0,9801 0,9836 75 0,9771 0,9838 0,9866 100 0,9822 0,9873 0,9895 150 0,9879 0,9913 0,9928 200 0,9905 0,9931 0,9942 300 0,9935 0,9953 0,996 Correlações obtidas na base de dados crabs grupo 1: 0,9929 0,9899 0,9924 0,9924 0,9910 grupo 2: 0,9901 0,9939 0,9931 0,9940 0,9924 grupo 3: 0,9902 0,9943 0,9907 0,9903 0,9893 grupo 4: 0,9919 0,9903 0,9915 0,9912 0,9939 Valor crítico a 1%: 0,9671. Valor crítico a 5%: 0,9768. Valor crítico a 10%:0,9809. Assim, podemos dizer que o p-valor do teste é superior a 10% em todos os casos. Teste de normalidade de Shapiro-Wilk Este teste, proposto em 1965, calcula uma estatística W para verificar se uma amostra aleatória de tamanho n provém de uma distribuição normal. Valores pequenos de W são evidência de desvios da normalidade. A estatística W é calculada de acordo com a seguinte equação: 2 n ai x(i ) W ni 1 2 x x i i 1 Teste de normalidade de Shapiro-Wilk os x(i)’s são os valores amostrais ordenados e os ai‘s são constantes geradas das médias, variâncias e covariâncias das estatísticas de ordem de uma amostra aleatória de tamanho n proveniente de uma distribuição normal. Em comparação a outros testes de aderência, esse teste comporta-se bem. No R existe a função shapiro.test(x). data: data: data: data: data: data: data: data: data: data: data: data: data: data: data: data: data: data: data: data: Resultados da aplicação do teste de normalidade de Shapiro-Wilk aos dados “CRABS” x1 --> W = 0.9817, p-value = 0.6268 x2 --> W = 0.9771, p-value = 0.4361 x3 --> W = 0.9815, p-value = 0.6179 x4 --> W = 0.9817, p-value = 0.6234 x5 --> W = 0.9777, p-value = 0.4592 y1 --> W = 0.9793, p-value = 0.5233 y2 --> w = 0.9846, p-value = 0.7538 y3 --> W = 0.9843, p-value = 0.7395 y4 --> W = 0.9866, p-value = 0.8386 y5 --> W = 0.9824, p-value = 0.6565 z1 --> W = 0.9758, p-value = 0.3918 z2 --> W = 0.9869, p-value = 0.8496 z3 --> W = 0.9771, p-value = 0.4366 z4 --> W = 0.9765, p-value = 0.4142 z5 --> W = 0.9742, p-value = 0.3411 w1 --> W = 0.9802, p-value = 0.5612 w2 --> W = 0.9804, p-value = 0.5683 w3 --> W = 0.9799, p-value = 0.5474 w4 --> W = 0.9801, p-value = 0.5568 w5 --> W = 0.9839, p-value = 0.7228 shapiro.test versus correlação do Q-Q plot No lugar do coeficiente de correlação do Q-Q plot, alguns pacotes estatísticos avaliam a estatística original proposta por Shapiro e Wilk (An Analysis of variance Test for Normality (Complete Samples), Biometrika, 52, 4, (1965), 591-611.) Neste teste, a correlação é calculada substituindo os quantis q(j) por uma função do valor esperado das estatísticas de ordem da normal padrão e suas covariâncias. Os autores preferem a correlação do Q-Q plot, pois ela corresponde diretamente aos pontos do gráfico. Para tamanhos amostrais grandes, as duas estatísticas são aproximadamente a mesma, de modo que qualquer uma das duas pode ser usada para avaliar a aderência à normal. Combinações Lineares dos Componentes do Vetor Aleatório Combinações lineares dos componentes do vetor aleatório podem igualmente ser investigadas quanto à normalidade. Alguns textos sugerem trabalhar com a combinação linear eˆ1T xi em que Seˆ1 ˆ1 eˆ1 e ˆ1 representa o maior autovalor de S, e o composto linear: eˆ pT xi em que Seˆ p ˆ p eˆ p e ˆ p representa o menor autovalor de S. Combinações Lineares dos Componentes do Vetor Aleatório Para avaliar as combinações lineares sugeridas, primeiro devemos obter os n valores correspondentes a tais compostos. Por simplicidade, consideraremos apenas o primeiro grupo. A verificação para os demais grupos fica como um exercício. Primeiro vamos obter a decomposição espectral de S1 – a matriz de variâncias amostral da espécie 1, gênero F, fazendo S1=cov(crabs[1:50, 4:8]), DES1=eigen(S1). DES1 receberá dois objetos: o vetor de autovalores em ordem decrescente de magnitude e a matriz ortogonal na qual as colunas são os autovetores correspondentes. Combinações Lineares dos Componentes do Vetor Aleatório dados=matrix(0,50,5) #receberá as cinco combinações definidas pelos 5 autovetores corresponddentes a S1. for (i in 1:50) {for (j in 1:5) {dados[i,j]=DES1$vectors[,j]%*%t(crabs[i,4:8])}} Agora é só repetir o processo anterior para obter os 5 Q-Q plots. prop=ppoints(50) quantilesp=qnorm(prop) C1=sort(dados[,1]), C2=sort(dados[,2]), C3=sort(dados[,3]) C4=sort(dados[,4]), C5=sort(dados[,5]) par(mfrow=c(3,2)) Resultados Corrrelações no qqplot: cor(quantilesp,c1): 0,9923 cor(quantilesp,c2): 0,9939 cor(quantilesp,c3): 0,9823 cor(quantilesp,c4): 0,989 cor(quantilesp,c5): 0,9822 Novamente a suposição de normalidade univariada de cada componente é aceitável, com um p-valor superior a 10% para todas as variáveis. Shapiro.test: E1: W = 0.9812, p-value = 0.6055 E2: W= 0.9888, p-value = 0.9133 E3: W = 0.9729, p-value = 0.3035 E4: W = 0.9724, p-value = 0.2897 E5: W = 0.9661, p-value = 0.1603 Avaliação da Normalidade bivariada O ideal seria verificar a supos~ição de normalidade para todas as distribuições normais de duas, 3, ... , p dimensões. Porém, para própositos práticos é, em geral, suficiente investigar as distribuições uni e bivariadas. Se as observações tiverem sido geradas de fato de uma distribuição normal multvariada, cada distribuição bivariada será normale, os contornos de densidade constante apresentarão uma forma elíptica. Avaliação da Normalidade bivariada Assim, os diagramas de dispersão dos componentes do vetor aleatório tomados dois a dois devem exibir uma forma elíptica. Além disso, vimos que se X ~ N 2 ( , ) , então P X 1 X 22(0,5) 0,50. T A grosso modo, devemos esperar que cerca de 50% das observações caiam na região, que corresponde a uma elipse, pois p=2. Avaliação da Normalidade bivariada Na prática, como o vetor de médias e a matriz de covarâncias são desconhecidos, usa-se x x T S 1 x x 22(0,5) Calcular a fração de pontos dentro de um contorno de densidade constante e subjetivamente compará-la com a probabilidade teórica é um procedimento útil, porém impreciso. Avaliação da Normalidade bivariada Um método um pouco mais formal para julgar a normalidade bivariada é baseado nas distâncias quadradas generalizads di2 xi x S 1 xi x , i 1,2,...n T Esse procedimento não é limitado ao caso p=2. Avaliação da Normalidade bivariada Quando a população é de fato normal multivariada e ambos n e n-p são maiores que 25 ou 30, cada uma das distâncias generalizadas quadradas devem comportar-se segundo uma distribuição de quiquadrado com p graus de liberdade. Apesar dessas distâncias não serem independentes ou não terem distribuição exata de Qui-quadrado, é útil construir um gráfico como se fossem. O gráfico resultante é chamado gráfico qui-quadrado. Construção do gráfico qui-quadrado 1. Ordene as distâncias quadradas amostrais obtendo d(21) d(22) ... d(2n) 2. Construa o gráfico de dispersão dos pontos: 2 p (i 0,5) / n , d (2i ) , com p2(i-0,5 )/n representando o 100(i-0,5)/n quantil da distribuição de qui-quadrado com p graus de liberdade. A nuvem de pontos deve se ajustar a uma reta passando pela origem e com inclinação 1. Um padrão diferente sugere falta de normalidade. Verificando a normalidade bivariada dos dados em crabs Para começar devemos calcular as distâncias quadradas. Defina a matriz de dados x=matrix(0,200,5) e faça x1=x[1:50,1:5]. Em seguida vamos calcular o vetor de médias m1=matrix(0,1,5) // for (i in 1:5){m1[i]=mean(x1[,i])} e a matriz de covariância amostral S1=cov(x1). Defina o vetor que receberá as distâncias quadradas: dquad1=matrix(0,50) e faça for (i in 1:50){dquad1[i]=(x1[i,]-m1)%*%solve(S1)%*%t(x1[i,]-m1)} Verificando a normalidade bivariada dos dados em crabs Em seguida obtenha o vetor prop=ppoints(50) para calcular o vetor de quantis (esperados) qui=qchisq(prop,5) Agora é só construir o gráfico. A figura a seguir mostra os gráficos obtidos para os quatro grupos. Também podemos calcular as porcentagens em cada caso das distâncias quadradas que ficaram abaixo do quantil de 50% da qui-quadrado com 5 graus de liberdade. Nesses caso em particular, observou-se 60%, 62%, 50% e 50%, respectivamente. Passos na Detecção de Outliers (valores destoantes) 1) Construa diagramas de pontos de cada componente do vetor aleatório. 2) Construa diagramas de dispersão dos componentes do vetor aleatório tomados 2 a 2. 3) Calcule os valores padronizados de cada componente do vetor aleatório. Examine os valores absolutos padronzados que são muito grandes. 4) Calcule as distâncias quadradas generalizadas. Examine essas distâncias para valores muito afastados da origem. Detecção de Outliers No passo 3, “grande” deve ser interpretado realtivamente a n e a p. Por exemplo, se n=100 e p=5, então np=500 e espera-se que apenas um ou dosi deles, em valor absoluto, exceda a 3. Como uma referência, o valor 3,5 pode ser considerado grande para amostras de tamanho moderado. No passo 4, “grande” é medido por um quantil apropriado da distribuição de qui-quadrado com p g.l. Por exemplo, se n=100, esperaria-se cerca de 5 2 observações excedendo o quantil p ( 0, 05) Detecção de Outliers Se outliers são identificados, eles devem ser examinados caso a caso. Dependendo de sua natureza e dos objetivos da investigação eles deverão ser deletados ou apropriadamente ponderados numa análise posterior. Transformações para normalizar Se a suposição de normalidade dos dados não é plausível, que estratégia adotar? 1) Usar técnicas estatísticas apropriadas para dados nãonormais, após verificar a distribuição plausível para os dados (Poisson, Gamma,etc.) 2) Transformar os dados para uma nova escala, sob a qual a suposição de normalidade é plausível. Aqui, somente trataremos da transformação, pois técnicas a serem estudadas a seguir são voltadas para dados normais. Transformações não são nada mais do que uma forma de reescrever os dados numa unidade diferente. Transformações úteis Escala original Escala transformada Contagens (y) ˆ) Proporções (p Correlações (r) y 1 pˆ logit( pˆ ) log 2 1 pˆ Fisher z (r ) 1 1 r log 2 1 r Transformações de normalização Em muitas situações a escolha para melhorar a aproximação normal não é óbvia. Para tais casos é conveniente deixar que os dados mostrem uma transformação. Uma família útil de transformações para esse propósito é a família de transformações de potências : xλ. As transformações de potência só estão definidas para variáveis positivas. Porém, isso não é tão restritivo quanto parece, porque uma única constante pode ser adicionada a cada observação no conjunto de dados se alguns dos valores observados forem negativos. Transformações de normalização Box e Cox consideraram a seguinte família de transformações de potência modificada: x ( ) x 1 , 0 ln , 0 que é contínua em λ para x>0. Dada a amostra, escolhe-se λ de modo a maximizar: n n 1 n ( ) ( ) 2 l ( ) ln ( x j x ) ( 1) ln xi 2 n i 1 i 1 Transformações de normalização Observação: A transformação obtida geralmente melhora a aproximação à normalidade. Porém, não há garantias de que mesmo a melhor escolha de λ produzirá um conjunto de dados transformados que seja adequado à suposição de normalidade. Os resultados obtidos por uma transformação selecionada de acordo com esse procedimento devem ser cuidadosamente examinados para possíveis violações da suposição de normalidade. Essa recomendação de fato vale para qualquer transformação usada. Transformações de normalização Com observações multivariadas uma transformação de potência deve ser usada para cada componente do vetor de observações.