Análise Exploratória de Dados R – LIG/10 – 2008 Objetivos Análise de duas variáveis qualitativas: obter a tabela de contingência entre duas variáveis qualitativas; calcular tabelas derivadas da tabela de freqüências absolutas (freqüências relativas, perfis-linha e perfis coluna); calcular (definir) medida de associação entre duas variáveis qualitativas. Exemplo: pesquisa de mercado Dados de telemarketing da AT&T (companhia de telefonia americana) Fonte: James W. Watson (1986) (Splus). Esta base de dados contém informação sobre 1000 domicílios (linhas). As 10 variáveis (colunas) incluem informações demográficas e informação específica sobre os serviços de telefonia no domicílio. Exemplo (continuação) Nome, descrição e código das variáveis: 1) cia – fator indicando se o domicílio usa os serviços de longa distância da companhia AT&T (ATT) ou de outras companhias (OCC). 2) renda – fator ordenado indicando o nível de renda do domicílio. Os níveis são: <7.5, 7.5|-15, 15|-25, 25|-35, 35|-45, 45|-75, >=75. Nome, descrição e código das variáveis (cont.): 3) mudancas – fator ordenado indicando o número de vezes que o dono do domicílio mudou-se nos 10 anos precedentes. Os níveis são: 0, 1, 2, 3, 4, 5, 7 e 10. 4) idade – fator ordenado indicando a faixa etária do entrevistado. Os níveis são: 18-24, 25-34, 35-44, 45-54, 55-64, 65+. Nome, descrição e código das variáveis (cont.): 5) instrucao – fator ordenado indicando o nível de escolaridade do entrevistado. Os níveis são: <HS(ensino fundamental), HS(ensino médio), Voc, Coll, BA e >BA(Pós-graduação). 6) emprego – fator indicando o tipo de emprego do entrevistado. Os níveis são: F, P, R, S, H, U e D. 7) uso – vetor numérico fornecendo o uso médio mensal de telefone do domicílio. Nome, descrição e código das variáveis (cont.): 8) nonpub – fator indicando se o domicílio possui um número de telefone não listado. 9) plano – fator indicando se o domicílio participou de um plano especial da AT&T, antes da atual política de serviços de telefonia. 10) cartao – fator indicando se o domicílio possuiu um serviço de cartão da AT&T, antes da atual política de serviços de telefonia. Nome, descrição e código das variáveis (cont.): Os níveis das variáveis nonpub, plano e cartao são Y(Sim), N(Não) e NA(Não disponível). Os dados estão disponíveis no arquivo telemark.txt. dados=read.table(“http://www.im.ufrj.br/~flavia/ aed06/telemark.txt”,header=T) Atividade 1 Obter a tabela de dupla entrada das variáveis cia e plano. Vimos que para obter os totais marginais das respostas por variável, podemos usar o comando > table(dados$cia) table: ATT OCC 504 496 >table(dados$plano) N Y 919 62 Tabela de contingência Para obter a tabela de dupla entrada, também usamos o comando table: table(dados$cia,dados$plano) N Y ATT 454 48 OCC 465 14 Obs.: Dados não disponíveis não são levados em consideração. Freqüências relativas Para dispor as freqüências relativas em relação ao total, basta pedir round(table(dados$cia,dados$plano)/sum(table(dados$cia, dados$plano)),digits=3) N Y ATT 0.463 0.049 OCC 0.474 0.014 Perfis-linha Para obter a distribuição relativa ao total de cada linha, podemos definir uma matriz x com uma coluna e uma linha a mais que a tabela obtida, para representar a linha e a coluna de totais. Neste exemplo, podemos definir x=matrix(0,3,3) #x recebe uma matriz nula 3 por 3. Perfis-linha (cont.) x[1:2,1:2]=table(dados$cia,dados$plano) for (i in 1:2) {x[i,3]=sum(x[i,])} for (i in 1:2) {x[3,i]=sum(x[,i])} x[3,3]=sum(x[1:2,1:2]) N Y total ATT 454 48 502 OCC 465 14 479 total 919 62 981 Perfis-linha Para obter os perfis-linha, basta pedir pl=x e for (i in 1:3) {for (j in 1:3) { pl[i,j]=pl[i,j]/pl[i,3]}} round(pl,digits=2) N Y ATT 0.90 0.10 OCC 0.97 0.03 Total 0.94 0.06 total 1 1 1 Comentário Observe que independentemente da companhia, 94% não tinham o plano especial da AT&T e 6% tinham. Quando olhamos por companhia temos 90% e 10% para a AT&T e 97% e 3% para outras companhias. N Y ATT 0.90 0.10 OCC 0.97 0.03 Total 0.94 0.07 1 1 1 total Atividade 2 Obtenha os perfis-coluna para estas variáveis. pc=x e for (i in 1:3) {for (j in 1:3) { pc[j,i]=pc[j,i]/pc[3,i]}} round(pc,digits=2) Perfis-coluna N Y total ATT 0.494 0.774 0.512 OCC 0.506 0.226 0.488 total 1.000 1.000 1.000 Volta para exercício. Percebe-se que o perfil-coluna de totais (51%-ATT e 49%-OCC) para as companhias é parecido com o perfil de quem não possuiu o tal plano (49%ATT e 51%-OCC) Mas o perfil de totais é bem diferente do perfil de quem possuiu o plano (77%-ATT e 23%-OTT). COMENTÁRIO Desta última observação podemos concluir que há uma associação entre estas variáveis (cia e plano): o fato de ter possuído o plano da AT&T parece favorecer o domicílio a usar o serviço de longa distância da companhia AT&T(77%) e caso contrário, não há prevalência da AT&T(49%). Problema Como quantificar a associação entre duas variáveis qualitativas? Antes de responder essa pergunta, obtenha a tabela de contingência para cia e idade. Depois, obtenha os perfis-linha e coluna da tabela obtida. Companhia versus idade 18-24 25-34 35-44 45-54 55-64 65+ ATT 38 OCC 23 129 85 98 105 75 77 67 86 82 102 x=matrix(0,3,7) x[1:2,1:6]=table(dados$cia,dados$idade) for (i in 1:2) {x[i,7]=sum(x[i,])} for (i in 1:7) {x[3,i]=sum(x[,i])} Companhia versus idade >x 18-24 25-34 35-44 45-54 55-64 65+ ATT 38 129 98 75 67 82 OCC 23 85 105 77 86 102 total 61 214 203 152 153 184 total 489 478 967 Perfis-linha Distribuição das idades por companhia: pl=x for (i in 1:7) {for (j in 1:3) {pl[j,i]=pl[j,i]/pl[j,7]}} 18-24 ATT 0.078 OCC 0.048 total 0.063 25-34 35-44 45-54 0.264 0.20 0.153 0.178 0.22 0.161 0.221 0.21 0.157 55-64 65+ total 0.137 0.168 1 0.180 0.213 1 0.158 0.190 1 Obs.: Podemos perceber que entre os clientes da AT&T, 54% estão entre os mais jovens e entre os de outras companhias (OCC), 55% estão entre os mais velhos. Isto indica alguma associação entre estas variáveis. Perfis-coluna Distribuição das companhias (ATT e OCC) por faixa de idade: pc=x for (i in 1:3) {for (j in 1:7) {pc[i,j]=pc[i,j]/pc[3,j]}} 18-24 ATT 0.623 OCC 0.377 total 1.000 25-34 35-44 45-54 55-64 65+ total 0.603 0.483 0.493 0.438 0.446 0.506 0.397 0.517 0.507 0.562 0.554 0.494 1.000 1.000 1.000 1.000 1.000 1.000 Medida de associação Se as duas variáveis em estudo são independentes, espera-se que a distribuição marginal de uma delas (sem discriminar por valores da outra) seja igual às distribuições condicionadas por valores da outra. A partir dessa idéia, podemos construir uma medida de associação entre duas variáveis qualitativas, conhecida como Qui-quadrado. Exemplo: Suponha a seguinte tabela de contingência Ao examinar 400 estudantes de certa Instituição distribuídos pelos cursos de Estatística e Engenharia, obteve-se: sexo Curso 1 Estatística Curso 2 Engenharia total Homens 40 200 240 Mulheres 60 100 160 total 100 300 400 Curso versus sexo Se sexo e matrículas nos cursos de Engenharia e Estatística fossem independentes, esperaria-se ter os seguintes perfis-coluna: sexo Curso 1 Estatística Curso 2 Engenharia total Homens 60% 60% 60% Mulheres 40% 40% 40% total 100% 100% 100% Valores esperados sob independência Como são 100 alunos em Estatística e 300 alunos em Engenharia, (240 do sexo masculino e 160 do sexo feminino) esperaria-se, em caso de independência, ter a seguinte tabela de contingência: sexo Curso 1 Estatística Curso 2 Engenharia total Homens 60 180 240 Mulheres 40 120 160 total 100 300 400 Tabela com as freqüências observadas: sexo Curso 1 Estatística Curso 2 Engenharia total Homens 40 200 240 Mulheres 60 100 160 total 100 300 400 Tabela com as freqüências esperadas no caso de não associação: sexo Curso 1 Estatística Curso 2 Engenharia total Homens 60 180 240 Mulheres 40 120 160 total 100 300 400 Qui-quadrado O qui-quadrado é uma medida que baseia-se na comparação entre os valores observados, que aqui denotaremos por nij e os valores esperados que denotaremos por eij. Para cada cela da tabela de contingência calculamos (nij eij ) 2 eij Tabela com as freqüências observadas: sexo Curso 1 Estatística Curso 2 Engenharia total Homens 40 200 240 Mulheres 60 100 160 total 100 300 400 (200 180 ) 2 180 100 120 2 120 Tabela com as freqüências esperadas no caso de não associação: (40 60 ) 2 60 60 40 2 40 sexo Curso 1 Estatística Curso 2 Engenharia total Homens 60 180 240 Mulheres 40 120 160 total 100 300 400 Qui-quadrado O qui-quadrado é, então, 2 l c i 1 j 1 (nij eij ) 2 eij onde l representa o número de categorias de resposta da primeira variável e c, representa o número de categorias de resposta da segunda variável. Cálculo do qui-quadrado do exemplo dos estudantes de Estatística e Engenharia 2 2 2 2 ( 40 60 ) ( 200 180 ) ( 60 40 ) ( 100 120 ) 2 22,22 60 180 40 120 Cálculo do Qui-quadrado usando o R Há no R, uma função específica que calcula o qui-quadrado de uma tabela de contingência. Interpretação: se a hipótese de nãoassociação entre as variáveis for verdadeira, o valor do qui-quadrado deve estar próximo de zero. Quanto maior for o valor do quiquadrado, mais forte é a associação entre as variáveis. Cálculo do qui-quadrado usando o R Suponha que x seja a matriz contendo os dados da tabela dos estudantes: x=matrix(0,2,2) x[1,1]=40 x[1,2]=200 x[2,1]=60 x[2,2]=100 Cálculo do Qui-quadrado usando o R Qui=chisq.test(x,correct=F) Pearson's Chi-squared test data: x X-squared = 22.2222 (qui-quadrado), df = 1, (graus de liberdade) p-value = 2.428e-06 (P-valor) Notação científica para 0,000002428 Pode ser usado como uma medida de avaliação da magnitude do qui-quadrado: - p-value<=0,05, indica que o qui-quadrado é grande, ou seja, indica uma possível associação entre as variáveis. Comentários do exemplo De acordo com o slide anterior, verifica-se que o Qui-quadrado obtido é alto, o que indica a presença de associação entre curso e sexo. Mais ainda, pela análise das tabelas verificamos que essa associação ocorre de tal modo que no curso de Estatística a maioria (60%) dos estudantes tende a ser do sexo feminino e na Engenharia, a maioria (67%) tende a ser do sexo masculino. Medidas derivadas do qui-quadrado Pearson definiu uma medida de associação, baseada no quiquadrado, chamada coeficiente de contingência, dado por C 2 n 2 onde n é o tamanho da amostra. Medidas derivadas do qui-quadrado Interpreta-se o coeficiente de contingência de maneira análoga ao coeficiente de correlação. Porém, o coeficiente de contingência, apesar de estar entre 0 e 1 nunca atinge o valor 1. O valor máximo de C depende de l (número de categorias de resposta da primeira variável), de c (número de categorias de resposta da segunda variável) e de n, o tamanho da amostra. Medidas derivadas do qui-quadrado Outro coeficiente é dado por T 2 /n (l 1)(c 1) que pode atingir o máximo igual a 1, quando l=c. Coeficientes para os dados do exemplo curso versus sexo qui=22.22222 CP=sqrt(qui/(qui+sum(x))) CP [1] 0.2294157 TC=sqrt((qui/sum(x))/(1*1)) TC [1] 0.2357022 Atividade 3: Calcule o qui-quadrado, e os coeficientes C e T, das seguintes tabelas de contingência: 1) cia e plano; 2) cia e idade; 3) cia e cartao; 4) cia e nonpub; 5) cia e renda; 6) cia e instrucao; 7) cia e emprego. 3.1) cia versus plano x=table(dados$cia,dados$plano) N Y ATT 454 48 OCC 465 14 chisq.test(table(dados$cia,dados$plano),correct=F) Pearson's Chi-squared test data: table(dados$cia, dados$plano) X-squared = 18.2476, df = 1, p-value = 1.940e-05 qui=18.2476 CP=sqrt(qui/(qui+sum(x))) TC=sqrt((qui/sum(x))/(1*1)) CP [1] 0.1351345 TC [1] 0.1363856 Companhia versus plano Como o valor de Qui-quadrado foi 18,2476, com um P-valor de 0,0000194 (bem menor do que 0,05), isso indica presença de associação entre as variáveis Companhia e Plano Vimos que entre os que participaram do plano, a maioria (77%) já usou os serviços de longa distância da AT&T. Entre os que não participaram do plano a distribuição fica mais equilibrada com 49% para AT&T e 51% para outras companhias. Ver tabela. 3.2) cia versus idade x=table(dados$cia,dados$idade) 18-24 25-34 35-44 45-54 55-64 65+ ATT 38 129 98 75 67 82 OCC 23 85 105 77 86 102 chisq.test(table(dados$cia,dados$idade),correct=F) Pearson's Chi-squared test data: table(dados$cia, dados$idade) X-squared = 17.4135, df = 5, p-value = 0.003779 > qui=17.4135 > CP=sqrt(qui/(qui+sum(x))) > TC=sqrt((qui/sum(x))/(1*5)) > CP [1] 0.1330008 > TC [1] 0.06001293 3.2) cia versus idade Como o valor de Qui-quadrado foi 17,4135, com um P-valor de 0,003799 (bem menor do que 0,05), isso indica presença de associação entre as variáveis Companhia e Idade Vimos que entre os clientes da AT&T, 54% estão nas faixas mais jovens. Entre os clientes de OCC, 55% estão nas faixas mais velhas. 3.3) cia versus cartao x=table(dados$cia,dados$cartao) N Y ATT 329 175 OCC 373 106 chisq.test(table(dados$cia,dados$cartao),correct=F) Pearson's Chi-squared test with Yates' continuity correction data: table(dados$cia, dados$cartao) X-squared = 19.0774, df = 1, p-value = 1.255e-05 > qui=19.0774 > CP=sqrt(qui/(qui+sum(x))) > TC=sqrt((qui/sum(x))/(1*1)) > CP [1] 0.1379777 > TC [1] 0.1393102 3.4) cia versus nonpub x=table(dados$cia,dados$nonpub) chisq.test(table(dados$cia,dados$nonpub),correct=F) Pearson's Chi-squared test data: table(dados$cia, dados$nonpub) X-squared = 15.1792, df = 1, p-value = 9.777e-05 > qui=15.1792 >x N Y ATT 384 119 OCC 424 69 > CP=sqrt(qui/(qui+sum(x))) > TC=sqrt((qui/sum(x))/(1*1)) > CP [1] 0.1225210 > TC [1] 0.1234510 3.5 Companhia versus renda chisq.test(table(dados$cia,dados$renda),correct=F) Pearson's Chi-squared test data: table(dados$cia, dados$renda) Qui-quadrado = 11,1541, df = 6, P-valor = 0,08373 > 0,05 Logo, não parece haver associação entre companhia e renda. 3.6 Companhia e Instrução chisq.test(table(dados$cia,dados$in strucao),correct=F) Pearson's Chi-squared test data: table(dados$cia, dados$instrucao) Qui-quadrado = 28,623, df = 5, p-valor = 0,00002749 3.7 Companhia e emprego chisq.test(table(dados$cia,dados$e mprego),correct=F) Pearson's Chi-squared test data: table(dados$cia, dados$emprego) Qui-quadrado = 13,4602, df = 6, p-valor = 0,03628