análise exploratória de dados - 2005

73
R - LIG-04 Análise Exploratória de Dados - 2005

Upload: elle

Post on 05-Jan-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Análise Exploratória de Dados - 2005. R - LIG-04. Objetivos da aula. Trabalhar com transformações de escala; detalhar argumentos da função stem (ramo-e-folhas); construir um diagrama de pontos; - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Análise Exploratória de Dados - 2005

R - LIG-04

Análise Exploratória de Dados - 2005

Page 2: Análise Exploratória de Dados - 2005

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.

Page 3: Análise Exploratória de Dados - 2005

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.

Page 4: Análise Exploratória de Dados - 2005

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.

Page 5: Análise Exploratória de Dados - 2005

Problema:

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

Page 6: Análise Exploratória de Dados - 2005

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.

Page 7: Análise Exploratória de Dados - 2005

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.

Page 8: Análise Exploratória de Dados - 2005

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

Page 9: Análise Exploratória de Dados - 2005

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)

Page 10: Análise Exploratória de Dados - 2005

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).

Page 11: Análise Exploratória de Dados - 2005

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

Page 12: Análise Exploratória de Dados - 2005

Ramo-e-folhas

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

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

Page 13: Análise Exploratória de Dados - 2005

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

Page 14: Análise Exploratória de Dados - 2005

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

0 | 3444444444445555555566666777789999944577

2 | 9

4 | 4

6 | 14

8 | 27

10 | 7

12 | 0

Page 15: Análise Exploratória de Dados - 2005

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

0 | 11111223

0 | 66777

1 | 1111234

1 | 555567788899

2 | 00123

2 | 55566778889

Page 16: Análise Exploratória de Dados - 2005

3) Inverso

stem(1/(islands)) 0 | 0000000134455

1 | 122247

2 | 0333458

3 | 0133448

4 | 038

5 | 3

6 | 33377

7 | 11777

8 | 3

Page 17: Análise Exploratória de Dados - 2005

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

0 | 000000000000011112345556689

1 | 01122569

2 | 38

3 | 999

4 | 44

5 | 11999

6 | 9

Page 18: Análise Exploratória de Dados - 2005

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, ...)

Page 19: Análise Exploratória de Dados - 2005

Diagrama de pontos: Exemplos

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

Page 20: Análise Exploratória de Dados - 2005

Diagrama de pontos: Exemplos

Page 21: Análise Exploratória de Dados - 2005

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]]'.

Page 22: Análise Exploratória de Dados - 2005

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.

Page 23: Análise Exploratória de Dados - 2005

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

Page 24: Análise Exploratória de Dados - 2005

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.

Page 25: Análise Exploratória de Dados - 2005

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

Page 26: Análise Exploratória de Dados - 2005

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)”)

Page 27: Análise Exploratória de Dados - 2005

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")

Page 28: Análise Exploratória de Dados - 2005
Page 29: Análise Exploratória de Dados - 2005

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.

Page 30: Análise Exploratória de Dados - 2005

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.

Page 31: Análise Exploratória de Dados - 2005

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.

Page 32: Análise Exploratória de Dados - 2005
Page 33: Análise Exploratória de Dados - 2005

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.

Page 34: Análise Exploratória de Dados - 2005

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.

Page 35: Análise Exploratória de Dados - 2005

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)

Page 36: Análise Exploratória de Dados - 2005

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.)

Page 37: Análise Exploratória de Dados - 2005

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")

Page 38: Análise Exploratória de Dados - 2005

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

Page 39: Análise Exploratória de Dados - 2005

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.

Page 40: Análise Exploratória de Dados - 2005

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.

Page 41: Análise Exploratória de Dados - 2005

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”)

Page 42: Análise Exploratória de Dados - 2005

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

Page 43: Análise Exploratória de Dados - 2005

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

Page 44: Análise Exploratória de Dados - 2005

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")

Page 45: Análise Exploratória de Dados - 2005

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.

Page 46: Análise Exploratória de Dados - 2005

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)

Page 47: Análise Exploratória de Dados - 2005
Page 48: Análise Exploratória de Dados - 2005

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:

Page 49: Análise Exploratória de Dados - 2005
Page 50: Análise Exploratória de Dados - 2005

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

Page 51: Análise Exploratória de Dados - 2005

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.

Page 52: Análise Exploratória de Dados - 2005

mean(cat$mat)[1] 4.78186

mean(met$mat)[1] 2.138710

mean(prod$mat)

[1] 5.537074

mean(enam$mat)

[1] 5.125484

Page 53: Análise Exploratória de Dados - 2005

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

Page 54: Análise Exploratória de Dados - 2005

Mediana

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

Valor que ocupaa posição central

Logo, a mediana deste conjunto é 16.

Page 55: Análise Exploratória de Dados - 2005

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

Page 56: Análise Exploratória de Dados - 2005

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).

Page 57: Análise Exploratória de Dados - 2005

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.

Page 58: Análise Exploratória de Dados - 2005

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.

Page 59: Análise Exploratória de Dados - 2005

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

Page 60: Análise Exploratória de Dados - 2005

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.

Page 61: Análise Exploratória de Dados - 2005

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:

Page 62: Análise Exploratória de Dados - 2005

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

Page 63: Análise Exploratória de Dados - 2005

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.

Page 64: Análise Exploratória de Dados - 2005
Page 65: Análise Exploratória de Dados - 2005

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.

Page 66: Análise Exploratória de Dados - 2005

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

Page 67: Análise Exploratória de Dados - 2005

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).

Page 68: Análise Exploratória de Dados - 2005

Distribuição achatada

voltar

Page 69: Análise Exploratória de Dados - 2005

Distribuição multimodal

volta

Page 70: Análise Exploratória de Dados - 2005

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.

Page 71: Análise Exploratória de Dados - 2005

Assimetria positiva - distribuição unimodal

média>mediana>moda

Page 72: Análise Exploratória de Dados - 2005

Assimetria negativa - distribuição unimodal

média<mediana<moda

Page 73: Análise Exploratória de Dados - 2005

Distribuição unimodal simétrica

média=mediana=moda