análise exploratória de dados - 2011

Post on 26-Jan-2016

36 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Análise Exploratória de Dados - 2011. Objetivos da aula. Trabalhar com transformações de escala; detalhar argumentos da função stem (ramo-e-folhas); construir um diagrama de pontos; trabalhar com a representação de uma série temporal (variável quantitativa observada ao longo do tempo); - PowerPoint PPT Presentation

TRANSCRIPT

Análise Exploratória de Dados - 2011

Objetivos da aulaTrabalhar com transformações de escala; detalhar argumentos da função stem (ramo-e-folhas); construir um diagrama de pontos; trabalhar com a representação de uma série temporal (variável quantitativa observada ao longo do tempo); construir mais de um gráfico na mesma janela; trabalhar com as medidas: média, mediana e moda.

Data(islands)

Os dados a seguir fazem parte do elenco de exemplos do R.

Descrição: áreas em milhares de milhas quadradas das maiores massas de terra do mundo (maiores que 10000 milhas quadradas). data(islands)

Formato: vetor rotulado de comprimento 48.

Para mais detalhes vamos usar o help.

help(islands)islands package:base R DocumentationAreas of the World's Major Landmasses (áreas das maiores massas de terra do mundo)

Descrição: contém as áreas em milhares de milhas quadradas das massas de terra, que excedem à 10000 milhas quadradas.

Uso: data(islands)

Formato: está num vetor rotulado de comprimento 48. Os rótulos referem-se ao local.

Fonte: The World Almanac and Book of Facts, 1975, page 406.

Problema:

Esses dados foram usados para resolver o seguinte problema: Deve a Austrália ser considerada como uma ilha ou como um continente?

Islands Africa Antarctica Asia Australia 11506 5500 16988 2968 Axel Heiberg Baffin Banks Borneo 16 184 23 280 Britain Celebes Celon Cuba 84 73 25 43 Devon Ellesmere Europe Greenland 21 82 3745 840 Hainan Hispaniola Hokkaido Honshu 13 30 30 89 Iceland Ireland Java Kyushu 40 33 49 14 Luzon Madagascar Melville Mindanao 42 227 16 36 etc.

RAMO-E-FOLHAS DE ISLANDS

stem(islands)

The decimal point is 3 digit(s) to the right of the |

0 | 00000000000000000000000000000111111222338 2 | 07 4 | 5 6 | 8 8 | 4 10 | 5 12 | 14 | 16 | 0

Observe que por conta das disparidadesde valores, o ramo-e-folhas concentracerca de 85% dos valores no primeiro ramo.

Uma alternativa aqui é trabalhar em outraescala.

Mudança de escala dos dados

stem(log(islands)) (Logaritmo natural dos dados)

2 | 566666778889 3 | 01234444556778889 4 | 134445 5 | 22467 6 | 7 7 | 8 | 0268 9 | 147

Função stem

stem package:base R DocumentaçãoStem-and-Leaf Plots (Ramo-e-folhas)Descrição: 'stem' produz um ramo-e-folhas dos valores no vetor 'x'. O parâmetro 'scale' pode ser usado para expandir a escala do gráfico. 'scale=2' implicará num ramo-e-folhas duas vezes mais comprido que o default (scale=1).Usage: stem(x, scale = 1, width = 80, atom = 1e-08)

Argumentos da função stem

x: um vetor numérico.scale: controla o comprimento do gráfico.width: largura desejada do gráfico.atom: uma tolerância (para o comprimento do ramo).

Ramo-e-folhas

stem(log(islands),scale=2)

2 | 2 | 566666778889 3 | 01234444 3 | 556778889 4 | 13444 4 | 5 5 | 224 5 | 67 6 | 6 | 7 7 | 7 | 8 | 02 8 | 68 9 | 14 9 | 7

Ramo-e-folhas

stem(log(islands),scale=1/2)

2 | 56666677888901234444556778889 4 | 13444522467 6 | 7 8 | 0268147

Ramo-e-folhas: outras escalas para os dados

Construa o ramo-e-folhas dos dados em islands nas escalas:

2) 1/raiz quadrada de x

3) 1/x

4) 1/x^2

1) Raiz quadrada de x

1) Raiz quadrada: sqrt()stem(sqrt(islands))

0 | 3444444444445555555566666777789999944577

2 | 9

4 | 4

6 | 14

8 | 27

10 | 7

12 | 0

2) Inverso da raiz quadradastem(1/sqrt(islands))

0 | 11111223

0 | 66777

1 | 1111234

1 | 555567788899

2 | 00123

2 | 55566778889

3) Inverso

stem(1/(islands)) 0 | 0000000134455

1 | 122247

2 | 0333458

3 | 0133448

4 | 038

5 | 3

6 | 33377

7 | 11777

8 | 3

4) Inverso do quadradostem(1/(islands^2))

0 | 000000000000011112345556689

1 | 01122569

2 | 38

3 | 999

4 | 44

5 | 11999

6 | 9

Diagrama de pontos

dotchart package:base R DocumentationCleveland Dot Plots

Descrição: desenha um gráfico de pontosComo usar: dotchart(x, labels = NULL, groups = NULL, gdata = NULL, cex = par("cex"), pch = 21, gpch = 21, bg = par("bg"), color = par("fg"), gcolor = par("fg"), lcolor = "gray", xlim = range(x[is.finite(x)]), main = NULL, xlab = NULL, ylab = NULL, ...)

Diagrama de pontos: Exemplos

Começaremos pedindo dotchart(islands), onde islands é um vetor.

Diagrama de pontos: Exemplos

Diagrama de pontos: argumentosx: pode ser tanto um vetor como uma matriz de valores numéricos ('NA's são permitidos). Se 'x' é uma matriz o gráfico resultante consiste de diagramas de pontos justapostos para cada linha. (Este último caso não será tratado hoje.)labels: um vetor de rótulos para cada ponto. Para vetores o default é usar ‘names(x)' e para matrizes os rótulos das linhas 'dimnames(x)[[1]]'.

Diagrama de pontos: argumentos (2)cex: define o tamanho do caracter a ser usado. Atribuir à 'cex' um valor menor do que um pode ser uma forma útil de evitar a sobreposição de rótulos.pch: caracter ou símbolo a ser usado no diagrama.

dotchart(islands,cex=0.6,pch=“*”)

Diagrama de pontos: argumentos (3)

bg: cor de fundo dos caracteres; para configurar a cor de fundo de todo diagrama.color: cores para serem usadas para os pontos e rótulos.lcolor: cores das linhas horizontais.xlim: amplitude do eixo horizontal.main: título global.xlab, ylab: rótulos para os eixos.

dotchart(islands,cex=0.6,pch="2",color="blue",lcolor="red",main="Maiores massas de terra do mundo")

dotchart(log(islands),cex=0.6,pch="2",color="blue",lcolor="red",main="Maiores massas de terra do mundo”,xlab=“log(área em milhas quadradas)”)

Exemplo 2: Notas em Estatística

O diagrama de pontos é útil para avaliarmos se há ou parece haver alguma estrutura no processo deobservação dos dados.

Por exemplo, observou-se as notas em Estatística numa turma de 100 alunos. Os dados estão no arquivohttp://www.im.ufrj.br/~flavia/aed06/dados3bm.txt

estat<-scan(”http://www.im.ufrj.br/~flavia/aed06/dados3bm.txt")dotchart(estat,main="Notas em Estatística",xlab="notas")

Exemplo 2: Notas em Estatística (cont.)

É possível verificar, a partir do diagrama de pontos,que as notas distribuem-se ao acaso de 1 a 10, nãoocorrendo nenhum padrão aparente no registro dasnotas.

Exemplo 3: Temperaturas médias mensais em Cananéia e Ubatuba (SP) de 1976 a 1985

Temperaturas médias mensais, em graus centígrados, de

janeiro de 1976 a dezembro de 1985.

http://www.im.ufrj.br/~flavia/aed06/dados5bm.txt

Usamos o termo SÉRIE TEMPORAL para nos referirmosa esse tipo de dado. Isso ocorre quando os dados daVariável quantitativa em estudo são coletados ao longo do tempo.

Exemplo 3: Temperaturas médias mensais em Cananéia e Ubatuba (SP) de 1976 a 1985

Temperaturas médias mensais, em graus centígrados, de

janeiro de 1976 a dezembro de 1985.

http://www.im.ufrj.br/~flavia/aed06/dados5bm.txt

dados<-read.table(”http://www.im.ufrj.br/~flavia/aed06/dados5bm.txt”,header=T)dotchart(dados$Ubatuba[1:24],main=”Temperaturas médias mensais em Ubatuba nos anos de 1976 e 1977”,xlab=”ºC")

Vamos visualizar as temperaturas médias em Ubatubanos anos de 1976 e 1977, que se referem às 24 primeiras observações.

Exemplo 3: Temperaturas médias mensais em Cananéia e Ubatuba (SP) de 1976 a 1985 (cont.)

É possível observar aqui um certo padrão decomportamento das temperaturas médias que são maisaltas no início dos anos, caem até o meio do ano, e depois voltam a subir.

Chamamos essecomportamento desazonal.

Exemplo 3: Temperaturas médias mensais em Cananéia e Ubatuba (SP) de 1976 a 1985 (cont.)

A série de temperaturas tem ao todo 120 observaçõespara cada cidade. Um dotchart para essa quantidade dedados não é conveniente.

Observe que a dependênciasazonal fica mascarada nestegráfico.

Exemplo 3: Temperaturas médias mensais em Cananéia e Ubatuba (SP) de 1976 a 1985 (cont.)

Podemos representar simultaneamente as duas sériesnum único gráfico.

No R há a função ts (time series) usada para criar objetosque são séries temporais.

Nesse exemplo temos duas séries mensais começandoem janeiro de 1976 e terminando em dezembro de 1985.

Podemos então definir a série temporal temp na forma:

temp<-ts(dados[,2:3],start=c(1976,1),end=c(1985,12),frequency=12)

Exemplo 3: Temperaturas médias mensais em Cananéia e Ubatuba (SP) de 1976 a 1985 (cont.)

temp<-ts(dados[,2:3],start=c(1976,1),end=c(1985,12),frequency=12)

Objeto que contém os valoresda série, podendo ser um vetorou uma matriz quando for o casode mais de uma série.Nesse exemplo temos duas séries

Informa o tempo de inícioda série ano=1976,mês=1

Informa o fim da série:ano=1985,mês=12

Informa a freqüência de observaçãona série (12 -mensal, 4-quadrimestral, 6- semestral, etc.)

Exemplo 3: Temperaturas médias mensais em Cananéia e Ubatuba (SP) de 1976 a 1985 (cont.)

Com o objeto criado, basta usar a função do R: plot.

plot(temp,main="Temperaturas médias mensais",xlab="tempo")

Exemplo 3: Temperaturas médias mensais em Cananéia e Ubatuba (SP) de 1976 a 1985 (cont.)

Confecção de mais de um gráfico numa única janela

Veremos como colocar vários gráficos numa única janela de gráfico.Para essa atividade vamos utilizar as notas da prova de matemática no vestibular 2005 da UFRJ para alunos classificados nas carreiras: Ciências Atuariais e Estatística: Básico, Meteorologia, Engenharia Ambiental e Engenharia de Produção.

Exemplo 4: Notas de Matemática - 2005

Os dados estão em quatro arquivos nos quais a primeira coluna indica o gênero (masculino ou feminino), a segunda indica o ano de nascimento e, a terceira, a nota obtida em matemática. Os nomes dos arquivos são: caest05.txt, engamb05.txt, producao05.txt e meteoro05.txt.

Exemplo 4 (cont.)Vejamos separadamente os 4 histogramas resultantes.

hist(cat$mat,main="Histograma das Notas de Matemática",sub="Classificados em Ciências At. E Estatística: Básico -2005”,xlab=“nota”,ylab=“Freqüência”)

Exemplo 4 (cont.)hist(enam$mat,main="Histograma das Notas de Matemática", sub= "Classificados em Engenharia Ambiental - 2005", xlab="nota", ylab="frequência")

Exemplo 4 (cont.)hist(met$mat,main="Histograma das Notas de Matemática", sub= "Classificados em Meteorologia - 2005",xlab="nota",ylab="frequência")

Exemplo 4 (cont.)hist(eprod$mat,main="Histograma das Notas de Matemática", sub="Classificados em Engenharia de Produção - 2005", xlab= "nota",ylab="frequência")

Uniformização das escalas

Para construir os 4 histogramas numa única janela vamosprimeiramente uniformizar as escalas. Como os dados são notas de 0 a 10, podemos começar impondo a cada gráfico o argumento xlim=c(0,10).

O comando que devemos dar antes do primeiro histograma é: par(mfrow=c(2,2)), indicando que queremos os 4 histogramas dispostos em duas linhas e duas colunas.

Além disso, use freq=F em cada histograma, pois os totais por amostra são diferentes e, assim trabalhamos na escala dasDensidades de freqüência relativa.

par(mfrow=c(2,2))> hist(enam$mat,main="Histograma das Notas de Matemática",sub="Classificados em Engenharia Ambiental - 2005",xlab="nota",ylab="frequência",xlim=c(0,10),freq=F)> hist(eprod$mat,main="Histograma das Notas de Matemática",sub="Classificados em Engenharia de Produção - 2005",xlab="nota",ylab="frequência",xlim=c(0,10),freq=F)> hist(met$mat,main="Histograma das Notas de Matemática",sub="Classificados em Meteorologia - 2005",xlab="nota",ylab="frequência",xlim=c(0,10),freq=F)> hist(cat$mat,main="Histograma das Notas de Matemática",sub="Classificados em Ciências Atuariais e Estatística - 2005",xlab="nota",ylab="frequência",xlim=c(0,10),freq=F)

Uniformizando a escala do eixo das densidades

Observe que as escalas das densidades em cada histogramaainda diferem.

Inserindo ylim=c(0,0.40) em cada histograma:

Comparando os histogramas, podemos claramenteperceber que os candidatos ao curso de Meteorologiamostraram um desempenho inferior em Matemática, quando comparado com os outros cursos.

Também podemos ver que nos demais cursos, a varia-ção das notas é parecida com uma concentração maiornas notas de Matemática para o curso de Ciências Atuariais/Estatística:básico.

Finalmente, percebe-se uma distribuição simétrica nocomportamento das notas de Matemática para o cursoProdução, que não ocorre para os demais.

Comparação

Medidas de posição: média e mediana

A média é a soma dos valores observados sobre o número de observações (média aritmética).No histograma ela representa o ponto de equilíbrio.

mean(cat$mat)[1] 4.78186

mean(met$mat)[1] 2.138710

mean(prod$mat)

[1] 5.537074

mean(enam$mat)

[1] 5.125484

Mediana

A mediana de uma distribuição de valores é o valor que ocupa a posição central quando os dados estão ordenados.Exemplo: considere o conjunto cujos valores são 11,23,14,15,16,20 e 21.Valores ordenados: 11,14,15,16,20,21,23

Mediana

11,14,15,16,20,21,23

Valor que ocupaa posição central

Logo, a mediana deste conjunto é 16.

Calculando a medianamedian

No R a função median, retorna a mediana de um conjunto de dados.

> median(cat$mat)[1] 4.5> median(met$mat)[1] 2.13> median(prod$mat)[1] 5.5> median(enam$mat)[1] 4.94

> mean(cat$mat)[1] 4.78186> mean(met$mat)[1] 2.138710> mean(prod$mat)[1] 5.537074> mean(enam$mat)[1] 5.125484

Média e mediana no R

A função que calcula a média aritmética de um vetor de dados numéricos x é mean(x).A função mean(x,trim=0.5) também serve para retornar o valor da mediana dos dados no vetor x.Mas, também podemos usar a função median(x).

Data(islands): média e mediana

mean(islands) produz 1252.729.median(islands) produz 41mean(islands,trim=0.5) produz 41.Não é uma mera coincidência os dois valores acima serem iguais, pois a mediana é o valor que ocupa a posição central quando os dados estão ordenados.

Média e mediana (cont.)

O argumento trim na função mean tem o efeito de “aparar as pontas” quando os dados estão ordenados na fração atribuída a trim, que pode ser um valor de 0(default) até 0.5.Observe que quando trim=0.5, depois de “aparar as pontas” sobra justamente o valor que ocupa a posição central.

Média versus mediana

é mais fácil de ser manipulada algebricamente;representa o centro de massa dos dados (é o ponto de equilíbrio no histograma).É muito afetada por valores extremos (ex.: (data(islands)).

É mais difícil de ser manipulada algebricamente;É o valor que ocupa a posição central quando os dados estão ordenados;Não é afetada por valores extremos.

MÉDIA MEDIANA

Média versus medianaDesta discussão, podemos observar que para distribuições muito assimétricas, a mediana é uma medida mais apropriada para caracterizar um conjunto de dados.Veja o exemplo dos dados em Islands. Um valor extremo torna a média muito alta, quando comparada aos dados do conjunto.

0 | 00000000000000000000000000000111111222338 2 | 07 4 | 5 6 | 8 8 | 4 10 | 5 12 | 14 | 16 | 0

mean(islands) produz 1252.729.median(islands) produz 41

Voltando ao exemplo dos dados Islands:

x<-rf(50,6,3) # x recebe 50 valores gerados pelo R, segundo a

distribuição de probabilidades F de Snedecor.

Observe que neste caso mean(x)>median(x).

OUTRO EXEMPLO

stem(x) 0 | 0000000000011111111111111111122222222234 0 | 5555568 1 | 13 1 | 2 | 2 | 8

Média versus mediana

Se a distribuição é aproximadamente simétrica,então média e mediana são aproximadamente iguais.

Em distribuições perfeitamente simétricas tem-se média=mediana.

Moda

É o valor mais freqüente da distribuição.No histograma, a classe modal é a classe de maior freqüência e a moda pode ser aproximada pelo ponto médio da classe.

ModaUma outra forma de aproximar a moda é mostrada na figura a seguir.

Moda

Uma distribuição pode não possuir moda (“achatada”).Uma distribuição pode possuir mais de uma moda (multimodal).Uma distribuição pode possuir apenas uma moda (unimodal).

Distribuição achatada

voltar

Distribuição multimodal

volta

Distribuições unimodais

Em distribuições unimodais tem-se sempre amediana entre a média e a moda:

Ou média<=mediana<=moda (assimetria negativa)ou moda<=mediana<=média (assimetria positiva)

Em distribuições unimodais perfeitamente simétricastem-se média=moda=mediana.

Assimetria positiva - distribuição unimodal

média>mediana>moda

Assimetria negativa - distribuição unimodal

média<mediana<moda

Distribuição unimodal simétrica

média=mediana=moda

top related