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