• Nenhum resultado encontrado

Cléber da Costa Figueiredo Séries Temporais PAE - 2º semestre de 2007

N/A
N/A
Protected

Academic year: 2021

Share "Cléber da Costa Figueiredo Séries Temporais PAE - 2º semestre de 2007"

Copied!
10
0
0

Texto

(1)

1

Autocorrelação

2

Quem sou?

Licenciado em matemática pelo IME-USP;

Iniciação Científica sob orientação da Profª Drª Mônica Carneiro Sandoval;

Transformação de Box-Cox. Mestre em estatística sob a orientação da Profª Drª Mônica Carneiro Sandoval e co-orientação da Profª Denise Aparecida Botter;

Incorporação do plano amostral na análise de regressão.

Atualmente, doutorando em estatística...sob a orientação do Profº Drº Heleno Bolfarine e Co-orientação da Profª Drª Mônica Carneiro Sandoval;

Calibração linear em modelos com assimetria. Interesse: Análise de Regressão, Inferência Bayesiana e Calibração Linear. 3

Supervisora: Profª Clélia Maria de

Castro Toloi

Programa de

Aperfeiçoamento de

Ensino

4

Alguns exemplos do R - Passageiros

Figura 1. Totais mensais de passageiros em linhas aéreas internacionais nos EUA entre 1949 e 1960.

Existe uma clara tendência de crescimento bem como um padrão sazonal ao longo dos anos.

Anos N ú m e ro d e p a s sa g e ir os ( e m m ilh a re s) 1950 1952 1954 1956 1958 1960 0 1 0 0 20 0 3 0 0 4 00 5 0 0 6 00 5

Comandos

> data(AirPassengers)

# para obter informações sobre os dados # > help(AirPassengers)

> x = AirPassengers

# testa se um objeto é uma série temporal # > is.ts(x)

> plot(x,xlab='Anos',ylim=c(0,650),ylab='Número de passageiros (em milhares)')

6

Número de Linces

Figura 2. Número anual de linces capturados em armadilhas entre 1821 e 1934 no Canadá.

Observe o padrão um padrão cíclico em torno de 10 ou 11 anos. Anos N úm e ro d e l in c e s c ap tu ra d o s 1820 1840 1860 1880 1900 1920 0 1 00 0 2 0 00 3 0 0 0 40 0 0 5 00 0 6 00 0 7 0 00

(2)

7

Comandos

> data(lynx)

# para obter informações sobre os dados # > help(lynx)

> linces = lynx

# testa se o objeto é uma série temporal # > is.ts(linces)

> plot(linces,xlab='Anos', ylab='Número de linces capturados')

8

Vazões do Rio Nilo

Figura 3. Medições anuais de vazões do Rio Nilo em Ashwan entre 1871 e 1970.

Parece haver alguma alteração estrutural em torno do ano de 1900. Anos M e d iç õ e s a n u a is d a s v a z õ e s 1880 1900 1920 1940 1960 6 0 0 8 0 0 1 0 0 0 1 2 0 0 1 4 0 0 9

Comandos

> data(Nile)

# para obter informações sobre os dados # > help(Nile)

> Nilo = Nile

# testa se o objeto é uma série temporal # > is.ts(Nilo)

> plot(Nilo,xlab='Anos', ylab='Medições Anuais das vazões')

10

Total mensal de mortos em acidentes

Figura 4. Mostra o total mensal de mortos nos Estados Unidos da América envolvidos em acidentes.

Parece que o número de mortos é maior durante os verões e esse padrão é observado ano a ano. Além disso, o número de mortos não parece aumentar, mantendo-se estacionário. Anos N ú m e ro d e m ort o s 1973 1974 1975 1976 1977 1978 1979 7 00 0 80 0 0 90 00 10 0 00 1 1 00 0

Comandos

> data(USAccDeaths)

# para obter informações sobre os dados # > help(USAccDeaths)

> mortes = USAccDeaths

# testa se o objeto é uma série temporal # > is.ts(mortes)

> plot(mortes,xlab='Anos', ylab='Número de mortos')

Gás no Reino Unido

Figura 5. Série trimestral do consumo de gás no Reino Unido entre o primeiro trimestre de 1960 e o quarto trimestre de 1986.

Há uma tendência de crescimento porém a amplitude do padrão sazonal aumenta bastante a partir de 1971.

Tempo (em quadrimestres)

C on s um o d e g á s 1960 1965 1970 1975 1980 1985 20 0 4 0 0 60 0 80 0 1 00 0 1 20 0

(3)

13

Comandos

> data(UKgas)

# para obter informações sobre os dados # > help(UKgas)

> gas = UKgas

# testa se o objeto é uma série temporal # > is.ts(gas)

> plot(gas,xlab='Tempo (em quadrimestres)', ylab='Consumo de gás')

14

Colocando quatro deles lado a lado.

> par(mfrow=c(2,2))

> plot(x,xlab='Anos',ylim=c(0,650),ylab='Número de passageiros (em milhares)')

> plot(linces,xlab='Anos', ylab='Número de linces capturados')

> plot(Nilo,xlab='Anos', ylab='Medições Anuais das vazões')

> plot(mortes,xlab='Anos', ylab='Número de mortos')

15 Anos N ú m e ro d e p a s s a g e ir o s ( e m m ilh a re s ) 1950 1954 1958 0 2 0 0 4 0 0 6 0 0 Anos N ú m e ro d e l in c e s c a p tu ra d o s 1820 1860 1900 0 2 0 0 0 5 0 0 0 Anos M e d iç õ e s A n u a is d a s v a z õ e s 1880 1920 1960 6 0 0 1 0 0 0 1 4 0 0 Anos N ú m e ro d e m o rt o s 1973 1975 1977 1979 7 0 0 0 9 0 0 0 1 1 0 0 0 16

Autocorrelação

Coeficientes de Autocorrelação: Ferramenta para se identificar as propriedades de uma série temporal. Coeficiente de correlação linear... n 1 i 2 i n 1 i 2 i n 1 i i i Y X XY y y x x y y x x S S S r (x1,y1), (x2, y2), (x3, y3), (x4, y4), (x5, y5), (x6, y6) . . . 17

Idéia de autocorrelação

Queremos medir a correlação entre as observações de uma mesma variável em diferentes momentos de tempo.

Seria ótimo se conseguíssemos entender a relação entre observações defasadas 1, 2, ..., períodos de tempo.

18

r

1

Será que há correlação entre uma e outra observação?

x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, ...

(4)

19

r

2

E entre a observação e a segunda vizinha? x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, ...

(x1,x3), (x2, x4), (x3, x5), (x4, x6), (x5, x7), (x6, x8) . . .

20

r

3

E com a terceira vizinha?...

x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, ...

(x1,x4), (x2, x5), (x3, x6), (x4, x7), (x5, x8), . . .

21

A idéia é criar novos pares de variáveis!

Em r1os pares são (x1,x2), (x2, x3), ...

Em r2os pares são (x1,x3), (x2, x4), ... Em r3os pares são (x1,x4), (x2, x5), ... E calcular as correlações dos novos pares de variáveis.

22

O coeficiente pode ser simplificado!

Considerando x1, . . . , xn 1 e x2, . . . , xncomo

duas variáveis o coeficiente de correlação entre xte xt+1, por exemplo, é dado por:

Mais simplificações!

Onde as médias amostrais são

Se utilizarmos a média amostral total e considerarmos que as duas médias acima são aproximadamente as mesmas.

x

A versão simplificada do coeficiente de correlação fica:

Além disso, podemos excluir o fator n/(n-1) já que está próximo de 1 e temos um estimador bem mais simples!

(5)

25

Um estimador da autocorrelação

A expressão anterior pode ser generalizada para calcular a correlação entre observações defasadas em k períodos de tempo.

26

Observações

Assim como o coeficiente de correlação usual, as autocorrelações são adimensionais e 1 < rk< 1. Na prática é mais usual calcular primeiro os coeficientes de autocovariância {ck}, definidos por analogia com a fórmula usual de covariância

Os coeficientes de autocorrelação são então obtidos como rk= ck/c0.

27

Estudo da série de vazões do Nilo

800 900 1000 1100 1200 5 0 1 0 0 1 5 0 2 0 0 2 5 0

Uso de alguma transformação?

Médias dos subconjuntos

D e s v io s -p a d rã o (õ e s ) d o s s u b c o n ju n to s 28

Verificação da necessidade do

uso de alguma transformação

j<-floor(n/20) # para garantir L = 20 # abcissa<- NULL ordenada<- NULL for (i in 1: (n-j)){ abcissa[i]<-mean(Nilo[i:(i+j)]) ordenada[i]<-sd(Nilo[i:(i+j)]) }

plot(x=abcissa,y=ordenada, xlab='Médias dos subconjuntos', ylab= 'Desvios-padrão(ões) dos subconjuntos', main='Uso de alguma transformação?')

29

Gás no Reino Unido Log

e

?

100 200 300 400 500 600 5 0 1 0 0 1 5 0 2 0 0 2 5 0 3 0 0

Uso de alguma transformação?

Médias dos subconjuntos

D e s v io s -p a d rã o (õ e s ) d o s s u b c o n ju n to s 30

Estudo das autocorrelações

Como exemplo do cálculo das

autocorrelações vamos utilizar os dados das medições das vazões do Nilo disponível no R.

Vamos montar uma matriz de correlogramas de valores defasados de 1, 2, 3 e 4 períodos.

(6)

31

Comandos

Nilo <- Nile n <- length(Nilo) k <- 5 m = NULL for (i in 1:k) m=cbind(m,lag(Nilo,k=i-1)) m=as.data.frame(m)

colnames(m) <- c("Nilo[i]", "Nilo[i-1]", "Nilo[i-2]", "Nilo[i-3]", "Nilo[i-4]")

pairs(m, gap = 0, upper.panel = panel.smooth)

32 x[i] 600 1000 1400 600 1000 1400 6 0 0 1 0 0 0 1 4 0 0 6 0 0 1 0 0 0 1 4 0 0 x[i-1] x[i-2] 6 0 0 1 0 0 0 1 4 0 0 6 0 0 1 0 0 0 1 4 0 0 x[i-3] 600 1000 1400 600 1000 1400 600 1000 1400 6 0 0 1 0 0 0 1 4 0 0 x[i-4] 33

A função de autocorrelação - acf

Para calcularmos todas as possíveis autocorrelações existe uma função chamada acf.

No exemplo anterior, se tivéssemos digitado o comando:

acf( Nile )

Teríamos o correlograma de toda a série.

34 0 5 10 15 20 -0 .2 0 .0 0 .2 0 .4 0 .6 0 .8 1 .0 Lag A C F Series Nile

Limites de confiança

Numa série aleatória esperamos que os valores defasados sejam não

correlacionados e espera-se que rk= 0. Podemos mostrar que rktem distribuição assintótica

rk~N ( 1/n ; 1/n).

Assim, os limites de confiança aproximados de 95% são dados por 1/n ± 1, 96/ n, que são frequentemente ainda mais aproximados para ±1, 96/ n.

Correlogramas dos Exemplos

Anos N ú m e ro d e p a s s a g e ir o s ( e m m il h a re s ) 1950 1954 1958 0 20 0 4 0 0 6 0 0 Anos N ú m e ro d e l in c e s c a p tu ra d o s 1820 1860 1900 0 20 0 0 5 00 0 Anos M e d iç õ e s A n u a is d a s v a z õ e s 1960 1970 1980 2 0 0 6 0 0 1 0 0 0 Anos N ú m e ro d e m o rt o s 1973 1975 1977 1979 7 0 0 0 9 0 0 0 1 1 0 0 0

(7)

37

Correlogramas

0.0 0.5 1.0 1.5 -0 .2 0 .2 0 .6 1 .0 defasagem a u to c o rr e la ç o e s passageiros 0 5 10 15 20 -0 .5 0 .0 0 .5 1 .0 defasagem a u to c o rr e la ç o e s linces 0 1 2 3 4 5 -0 .2 0 .2 0 .6 1 .0 defasagem a u to c o rr e la ç o e s gás 0.0 0.5 1.0 1.5 -0 .4 0 .0 0 .4 0 .8 defasagem a u to c o rr e la ç o e s mortos 38

Comandos

par(mfrow=c(2,2))

plot(x,xlab='Anos',ylim=c(0,650),ylab='Número de passageiros (em milhares)')

plot(linces,xlab='Anos', ylab='Número de linces capturados') plot(gas,xlab='Anos', ylab='Medições Anuais das vazões') plot(mortes,xlab='Anos', ylab='Número de mortos')

par(mfrow=c(2,2)) acf(x, main= 'passageiros',xlab='defasagem',ylab='autocorrelaçoes') acf(linces, main='linces',xlab='defasagem',ylab='autocorrelaçoes') acf(gas, main='gás',xlab='defasagem',ylab='autocorrelaçoes') acf(mortes, main='mortos',xlab='defasagem',ylab='autocorrelaçoes') 39

Gerando séries temporais artificiais

1. Série aleatória, observações iid da distribuição N(0,1)

x = rnorm(200,0,0.1) par(mfrow=c(1,2)) plot.ts(x,xlab='tempo',ylab='observações') acf(x,main='',xlab='defasagem',ylab='autocorrelações') 40

Saídas - ruído

t e m p o o b s e rv a ç õ e s 0 5 0 1 0 0 2 0 0 -0 .2 -0 .1 0 .0 0 .1 0 .2 0 5 1 0 1 5 2 0 -0 .2 0 .0 0 .2 0 .4 0 .6 0 .8 1 .0 d e f a s a g e m a u to c o rr e la ç õ e s 41

Gerando séries temporais artificiais

2. Série com tendência,

e = rnorm(100,0,0.1) x = cumsum(e) par(mfrow=c(1,2)) plot.ts(x,xlab='tempo',ylab='observações') acf(x,main='',xlab='defasagem',ylab='autocorrelações') ) 01 , 0 ; 0 ( 1 N x xt t 42

Saída passeio aleatório

t e m p o o b s e rv a ç õ e s 0 2 0 4 0 6 0 8 0 -1 .0 -0 .5 0 .0 0 5 1 0 1 5 2 0 -0 .2 0 .0 0 .2 0 .4 0 .6 0 .8 1 .0 d e f a s a g e m a u to c o rr e la ç õ e s

(8)

43

A função diff(...)

É interessante notar que a primeira diferença de um passeio aleatório é estacionária! z<-diff(x) par(mfrow=c(1,2)) plot.ts(z,xlab='tempo',ylab='observações') acf(z,main='',xlab='defasagem',ylab='autocorrel ações') 44

Agora é estacionária!

t e m p o o b s e rv a ç õ e s 0 2 0 4 0 6 0 8 0 -0 .2 -0 .1 0 .0 0 .1 0 .2 0 5 1 0 1 5 -0 .2 0 .0 0 .2 0 .4 0 .6 0 .8 1 .0 d e f a s a g e m a u to c o rr e la ç õ e s 45

Vamos usar diff(...) - Passageiros

A n o s N ú m e ro d e p a s s a g e ir o s ( e m m il h a re s ) 1 9 5 0 1 9 5 4 1 9 5 8 0 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 0 0 0 . 0 0 . 5 1 . 0 1 . 5 -0 .2 0 .0 0 .2 0 .4 0 .6 0 .8 1 .0 d e f a s a g e m a u to c o rr e la ç o e s p a s s a g e i r o s 46 z<-diff(x,lag=12) par(mfrow=c(1,2)) plot.ts(z,xlab='tempo',ylab='observações') acf(z,main='',xlab='defasagem',ylab='autocorrelações') t e m p o o b s e rv a ç õ e s 1 9 5 0 1 9 5 4 1 9 5 8 0 2 0 4 0 6 0 0 . 0 0 . 5 1 . 0 1 . 5 -0 .2 0 .0 0 .2 0 .4 0 .6 0 .8 1 .0 d e f a s a g e m a u to c o rr e la ç õ e s

Gerando séries temporais artificiais

3. Série com correlação de curto-prazo

Curto<-arima.sim(n = 400, list(ar = 0.7)) par(mfrow=c(1,2)) plot.ts(Curto,xlab='tempo',ylab='observações') acf(Curto,main='',xlab='defasagem',ylab='autocorrelações') t t t x e x 0,7 1

Saída memória de curto prazo

t e m p o o b s e rv a ç õ e s 0 2 0 4 0 6 0 8 0 -4 -3 -2 -1 0 1 2 0 5 1 0 1 5 2 0 -0 .4 -0 .2 0 .0 0 .2 0 .4 0 .6 0 .8 1 .0 d e f a s a g e m a u to c o rr e la ç õ e s

(9)

49

Gerando séries temporais artificiais

4. Série com correlação negativa

negativo<-arima.sim(n = 100, list(ar = -0.8)) par(mfrow=c(1,2)) plot.ts(negativo,xlab='tempo',ylab='observações') acf(negativo,main='',xlab='defasagem',ylab='autocorrelações') t t t x e x 0,8 1 50

Saída correlações negativas

t e m p o o b s e rv a ç õ e s 0 2 0 4 0 6 0 8 0 -6 -4 -2 0 2 4 6 0 5 1 0 1 5 2 0 -0 .5 0 .0 0 .5 1 .0 d e f a s a g e m a u to c o rr e la ç õ e s

(10)

Referências

Documentos relacionados

As indicações para cirur- gia incluem todos os doentes com adenocarcinoma con- finado à próstata, com esperança de vida superior a 10A, e sem comorbilidades que constituam

Muito bom – (1) quando há aplicativos que permitem o acesso a dados e infor- mações administrativas do governo (abertura); (2) quando os arquivos estão disponíveis para

Prato Lombinhos de pescada no forno com orégãos, arroz de cenoura e salada de milho e tomate 2,4 Vegetariana Empadão de arroz com soja e legumes (repolho, brócolos e cenoura) 6,7

Poderíamos considerar a alfabetização científica como o conjunto de conhecimentos que facilitaria aos homens e mulheres fazer uma leitura do mundo onde vivem,

Mediador: Profº.. Drº Nicola D’ Antuono -Università Gabriele D’Annunzio di Chieti/ Pescara Mediador: Profº. Profª Drª Celina Moreira – UFRJ/CNPq. Verdi e Carlos Gomes; ópera

No capítulo 1, t,rat.amos dos difeomorfismos reversíveis, apresentamos uma aplicaç~w do teorema de Montgomery-Bochner [Mo,Zi] para mostrar que toda iuvolnção localmente é cp(:c,

§ 30% em pacientes com primeira recidiva ou segunda remissão § 50 a 60% em pacientes com primeira remissão. o Estudos indicam que a sobrevida é melhor com o transplante de

Crisóstomo (2001) apresenta elementos que devem ser considerados em relação a esta decisão. Ao adquirir soluções externas, usualmente, a equipe da empresa ainda tem um árduo