Você está na página 1de 21

S ÉRIES T EMPORAIS E P REVISÃO

A PLICAÇÃO AOS DADOS DA P RECIPITAÇÃO EM


C ASAL S OEIROS

H OMEWORK 1 - PART 2

M.ª da Glória Gonçalves (200305541)

14 de novembro de 2021
Conteúdo

1 Introdução 3

2 Análise exploratória de dados 4

3 Resultados 6

4 Discussão 13

5 Conclusão 14

6 Referências Bibliográficas 15

7 Apendice 16

1
Lista de Figuras

2.1 Histograma de frequências e densidade. . . . . . . . . . . . . . . . . . . . . . . . . . . 4


2.2 Box-plot e diagrama de extremos e quartis. . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 Diagrama de extremos/quartis dos meses do ano. . . . . . . . . . . . . . . . . . . . . . 5

3.1 Série Temporal e ACF: precipitação em Casal Soeiro. . . . . . . . . . . . . . . . . . . . 6


3.2 PACF: precipitação em Casal Soeiro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3 Gráfico de dispersão defasada da precipitação em Casal Soeiro. . . . . . . . . . . . . . . 7
3.4 Distribuição sazonal da precipitação em Casal Soeiro. . . . . . . . . . . . . . . . . . . . 8
3.5 Modelagem aditiva da precipitação em Casal Soeiro. . . . . . . . . . . . . . . . . . . . 8
3.6 Modelagem multiplicativa da precipitação em Casal Soeiro. . . . . . . . . . . . . . . . . 9
3.7 Mais uma forma de observar a sazonalidade da precipitação média em Casal Soeiro. . . . 9
3.8 Mais uma forma de observar a sazonalidade da precipitação média em Casal Soeiro. . . . 9
3.9 Plot da comparação da previsão com os valores reais. . . . . . . . . . . . . . . . . . . . 11
3.10 Plot do modelo ajustado de HoltWinters; plot de previsão do modelo. . . . . . . . . . . . 11
3.11 Resíduos do modelo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2
C APÍTULO 1

I NTRODUÇÃO

As estações meteorológicos registam a precitação em diveros locais do nosso País. Quando uma variável
é medida sequencialmente ao longo do tempo ou em um intervalo fixo, conhecido como intervalo de
amostragem, os dados resultantes formam um série temporal. As observações que foram recolhidas em
intervalos de amostragem fixos formam o histórico da série temporal.
Uma sequência de variáveis aleatórias definidas em intervalos de amostragem fixos às vezes é chamada
de processo estocástico de tempo discreto, embora o nome mais curto série temporal, geralmente, é o
preferido.
As principais caraterísticas de muitas séries temporais são tendências e variações sazonais que podem
ser modeladas deterministicamente com funções matemáticas de tempo. Outra característica importante
da maioria das séries temporais é que as observações próximas no tempo tendem a ser correlacionadas
(dependendo da série temporal).
Neste relatório, partimos do princípio que a série temporal do conjunto dos dados trata de realizações
de sequências de variáveis aleatórias. O conjunto de dados utilizados no presente estudo referem-se
aos valores do precipitação recolhidos diariamente às 9h de cada 24h, entre 1961 e 1989, na estação
meteorológica de Casal Soeiro da Bacia hidrográfica do rio Vez. Os dados são os disponibilizados pelo
Sistema Nacional de Informação de Recursos Hídricos (SNIRH).
A análise aborda as principais caraterísticas da série temporal: se a série apresenta tendência, sazonalidade,
pontos de mudança, observações estranhas (outliers ou valores atípicos). Calculamos a autocorrelação
(ACF) e interpretamos. Usamos abordagens diferentes para reduzir a tendência / dessazonalizar a série
temporal. Estudamos os resíduos em relação à estacionariedade e autocorrelação. Este trabalho é efetuado
recorrendo ao RStudio.

3
C APÍTULO 2

A NÁLISE EXPLORATÓRIA DE DADOS

O conjunto de dados pertence ao período temporal de 1961 a 1989 e contem 10957 observações não nulas.
Restingimos a análise às observações dos totais mensais (348 meses) da precipitação em Casal Soeiro.
As variáveis são duas, do tipo data e numéricas (vee código a seguir). É de referir que o RStudio faz de
forma automática a padronização dos dados da série temporal, embora a unidade de medida dos dados
originais seja em milimetros por dia. Verificamos que o valor mínimo corresponde a dias sem chuva
(0 mm), o máximo a 11.3800 mil mm que é o total mensal, o valor da mediana ou 2.º quartil (Q) é de
1.1200 mil milimetros, o 3.º Q tem valores inferiores a 2.2775 mil milimetros e o valor médio é 1.6437
mil milimetros (mostramos estes valores, no código, a seguir).
tibble [348 x 2] (S3: tbl_df/tbl/data.frame)
$ month: Date[1:348], format: "1961-01-01" "1961-02-01" "1961-03-01" ...
$ cs : num [1:348] 3.35 1.66 0.15 3.03 1.82 0.4 0.78 0.27 0.85 4.28 ...

month cs
Min. :1961-01-01 Min. : 0.0000
1st Qu.:1968-03-24 1st Qu.: 0.4475
Median :1975-06-16 Median : 1.1200
Mean :1975-06-16 Mean : 1.6437
3rd Qu.:1982-09-08 3rd Qu.: 2.2775
Max. :1989-12-01 Max. :11.3800

Verificamos que a distribuição é, de forma significativa, assimétrica positiva (Ver a Figura 2.1). Deste
modo, observamos uma distribuição com muitos outliers (Ver a Figura 2.2 - box-plot e diagrama de
extremos e quartis). Mesmo com o juste à normal através do QQ-plot podemos observar facilmente os
valores extremos na série de dados, que supostamente correspondem a anos atípicos.

F IGURA 2.1
Histograma de frequências e densidade.

4
C HAPTER 2 – A NÁLISE EXPLORATÓRIA DE DADOS

F IGURA 2.2
Box-plot e diagrama de extremos e quartis.

Na continuação, referindo-nos, ainda, à distribuição da precipitação da série de dados natural, vemos na


Figura 2.3 que em todos os meses do ano existem valores atípicos.

F IGURA 2.3
Diagrama de extremos/quartis dos meses do ano.

5
C APÍTULO 3

R ESULTADOS

A série temporal do conjunto de dados da precipitação representa-se na Figura 3.1 - vemos a distribuição
dos dados da série temporal, para o período de tempo estudado. Através do correlograma obtivemos a
autocorrelação (ACF) que nos mostra como as correlações mudam com o atraso de K (Lag). Como o
coeficiente de correlação mostra-se maior para algumas desfasagens, deve-se ao padrão de sazonalidade
dos dados. Nas desfasagens sazonais, as autocorrelações são maiores para umas das desfasagens sazonais
(com multiplos do período sazona), do que para outras desfasagens. Talvez podemos dizer que temos
alguma tendência, os valors positivos diminuem lentamente à medida que as desfasagens aumentam, mas
com um teste estatístico precisamos melhor a tendência ou não tendência. Portanto, a diminuição lenta do
ACF conforme as desfasagens aumentam deve-se à tendência, enquanto o formato "recortado"deve-se à
sazonalidade. Podemos ver que o maior valor está nas desfasagens de meio em meio ano, i.e, em múltiplos
de 0.5 (Figura 3.1). Isso porque a sazonalidade depende dos meses do ano. É possível observar inclusive
um padrão do aumento da quantidade da precipitação durante aproximadamente 3 meses e uma descida
nos dois meses a seguir, sendo a cada 0.5 defasagens (meio ano hidrológico). A função de autocorrelação
parcial (PACF) calcula os coeficientes de correlação após o efeito de todas as defasagens "anteriores"(ou
seja, de ordem inferior) ter sido removido (por estimativa de projeção linear), Figura 3.2. Quer no gráfico
ACF quer no gráfico PACF verificamos que existe alguma autocorrelação nas desfazagens. Estes valores
também podem ser observados no código a seguir a cada gráfico, para o intervalo de confiança considerado
e respetiva Lag nos 12 meses estudados. Os resutados do ACF e a PACF facilitam na identificação do
modelo e de sua ordem adequado para modelar uma série temporal.
as autocorrelações fora da linha tracejada são estatisticamente diferentes de zero, as
que estão dentro do IC podem ser consideradas = 0.

as ordens são os traços fora do IC, aqui poderiamos coniserar a ordem 2


este gráfico começa a partir do zero
F IGURA 3.1
Série Temporal e ACF: precipitação em Casal Soeiro.

6
C HAPTER 3 – R ESULTADOS

Autocorrelations of series ‘r’, by lag

0.0000 0.0833 0.1667 0.2500 0.3333 0.4167 0.5000 0.5833 0.6667 0.7500 0.8333 0.9167 1.0000
1.000 0.228 0.198 0.014 -0.118 -0.232 -0.300 -0.262 -0.099 -0.049 0.179 0.166 0.272
1.0833 1.1667 1.2500 1.3333 1.4167 1.5000 1.5833 1.6667 1.7500 1.8333 1.9167 2.0000 2.0833
0.237 0.076 -0.027 -0.102 -0.269 -0.272 -0.236 -0.145 -0.094 0.091 0.244 0.275 0.191

Vamos ver a parte autoregressiva (AR) e para isso utilizamos a PACF


este gráfico começa a partir do 1

aqui poderiamos ter um modelo autorregressivo de ordem 0.9 e poderiamos


experimentar modelos AR para todas as ordens

depois escolhemos um ou dois modelos que melhor se ajuste aos nossos dados

F IGURA 3.2
PACF: precipitação em Casal Soeiro.

Partial autocorrelations of series ‘r’, by lag

0.0833 0.1667 0.2500 0.3333 0.4167 0.5000 0.5833 0.6667 0.7500 0.8333 0.9167 1.0000 1.0833
0.228 0.154 -0.064 -0.151 -0.190 -0.201 -0.130 0.033 -0.015 0.145 0.029 0.101 0.086
1.1667 1.2500 1.3333 1.4167 1.5000 1.5833 1.6667 1.7500 1.8333 1.9167 2.0000 2.0833
-0.053 -0.056 -0.009 -0.131 -0.107 -0.042 -0.060 -0.106 0.017 0.110 0.083 -0.022

O ACF fornece um perfil da correlação linear em todas as defasagens possíveis e mostra quais valores de
h (nº de períodos a prever) levam à melhor previsibilidade. A restrição dessa ideia à previsibilidade linear,
entretanto, pode mascarar uma possível relação não linear entre os valores atuais, xt, e os valores passados,
xt-h. Para verificar as relações não lineares exibimos uma matriz de gráfico de dispersão defasada, como na
Figura 3.3. As autocorrelações da amostra estão representadas no canto superior direito. Verificamos que
os ajustes são aproximadamente lineares, de modo que as autocorrelações da amostra são significativas. A
relação linear mais elevada é 0.27 (Figura 3.3).

F IGURA 3.3
Gráfico de dispersão defasada da precipitação em Casal Soeiro.

Uma outra forma de vernos a sazonalidade dos dados do clima, neste caso da precipitação, e que a sua
quantidade é influenciada, como todos sabemos, pelas estaçõs do ano é na Figura 3.4.

7
C HAPTER 3 – R ESULTADOS

F IGURA 3.4
Distribuição sazonal da precipitação em Casal Soeiro.

Seguidamente, mostramos ainda outras formas de ver os dados, pela sua decomposição: a aditiva (Figura
3.5) e a multiplicativa (Figura 3.6). Vemos que da decompisição aditiva para a multiplicativa temos
alguma pequenas alterações na distribuição dos dados. Assim, podemos olhar para a série de tempo
como compreendendo três componentes: um conjunto de ciclo de tendência, um componente sazonal e o
componente restante. Ao decompor uma série temproal pode ser útil, primeiro transformando e depois
ajustando a série para tornar a decomposição o mais simples possível para a sua posterior análise. Um
exemplo de ajuste pode se o referente ao calendário, como o total mensal / média mensal. Poderiamos
ainda, fazer ajustes na variável quantitativa, isto é, precipitação mensal ou uns tantos mil milimetros
por mês a definir, valor este que poderia representar o valor acima do qual a quantidade de precipitação
desencadeava uma cheia, embora neste traabalho não vamos referir as cheias como consequencia da
precipitação. Neste caso os dados seriam muito mais fácil de interpretar.

F IGURA 3.5
Modelagem aditiva da precipitação em Casal Soeiro.

A análise da série temporal quer seja pela distribuição da precipitação em cada ano e por cada mês mostra
sempre sazonalidade dos dados (Figura 3.7). Comprovamos ainda pela Figura 3.8 que o valor da média é
diferente para cada mês, como seria de esperar. No nosso país, nos meses se Inverno e Outono chove mais
doque nos meses da Primavera e do Verão.

8
C HAPTER 3 – R ESULTADOS

F IGURA 3.6
Modelagem multiplicativa da precipitação em Casal Soeiro.

F IGURA 3.7
Mais uma forma de observar a sazonalidade da precipitação média em Casal Soeiro.

F IGURA 3.8
Mais uma forma de observar a sazonalidade da precipitação média em Casal Soeiro.

Um dos modelos de suavização é o de HoltWinters, aplicado a séries com tendência e sazonais. Neste
trabalho procedemos à realização do teste de HoltWinters, e apresentamos os respetivos resultados do
modelo a seguir. Através deste modelo de suavização o valor dos parâmetros foi: alfa (0.081), beta
(0.0052) e gama (0.39). Obtivemos ainda os coeficientes, conforme se vê no código. Utilizamos a função
HoltWinters(): função para predição e ajustamento de algoritmos de HoltWinters com e sem sazonalidade
(aditivo e multiplicativo), pertencendo ao grupo dos métodos de suavização.

9
C HAPTER 3 – R ESULTADOS

Holt-Winters exponential smoothing with trend and additive seasonal component.

Call:
HoltWinters(x = data_sub)

Smoothing parameters:
alpha: 0.0816384
beta : 0.005184369
gamma: 0.3890303

Coefficients:
[,1]
a 0.5336149975
b -0.0224001487
s1 3.3280168679
s2 0.6780855840
s3 0.8179865202
s4 0.2535193592
s5 1.0161498845
s6 -0.0746626214
s7 -0.4388775950
s8 -0.5542815775
s9 -0.2617807330
s10 0.0006410012
s11 1.2420385394
s12 0.5535025959

A seguir mostramos os plot’s do modelo e respetiva previsão. Comparamos ainda a previsão pontual com
os valores reais. Observamos que na maioria dos pontos, a previsão pontual foi inferior ao valor real no
momento, significando que, a previsão pontual do modelo subestima a precipitação. No entanto, segue
razoalvente bem o comportamento da série (ver a Figura 3.9). Os valores previstos afastam-se um pouco
da linha dos valores observados, conforme vemos na Figura 3.10. Efetuamos ainda a previsão para 2
anos conforme vemos na Figura 3.10 - parece que existe uma tendência nan diminuição da precipitação,
embora a previsão seja curta, apenas 2 anos.
Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
Jan 1972 3.83923172 1.7105927 5.967871 0.5837592 7.094704
Feb 1972 1.16690028 -0.9688940 3.302695 -2.0995152 4.433316
Mar 1972 1.28440107 -0.8585981 3.427400 -1.9930334 4.561836
Apr 1972 0.69753376 -1.4527200 2.847788 -2.5909956 3.986063
May 1972 1.43776414 -0.7197937 3.595322 -1.8619358 4.737464
Jun 1972 0.32455148 -1.8403598 2.489463 -2.9863946 3.635498
Jul 1972 -0.06206364 -2.2343776 2.110250 -3.3843311 3.260204
Aug 1972 -0.19986777 -2.3796335 1.979898 -3.5335317 3.133796
Sep 1972 0.07023293 -2.1170335 2.257499 -3.2749024 3.415368
Oct 1972 0.31025451 -1.8845615 2.505071 -3.0464270 3.666936
Nov 1972 1.52925190 -0.6731624 3.731666 -1.8390502 4.897554
Dec 1972 0.81831581 -1.3917454 3.028377 -2.5616811 4.198313
Jan 1973 3.57042993 1.1667733 5.974087 -0.1056456 7.246505
Feb 1973 0.89809850 -1.5127047 3.308902 -2.7889068 4.585104
Mar 1973 1.01559929 -1.4023986 3.433597 -2.6824094 4.713608
Apr 1973 0.42873198 -1.9965087 2.853973 -3.2803536 4.137818
May 1973 1.16896235 -1.2635691 3.601494 -2.5512734 4.889198
Jun 1973 0.05574970 -2.3841204 2.495620 -3.6757096 3.787209
Jul 1973 -0.33086542 -2.7781219 2.116391 -4.0736212 3.411890
Aug 1973 -0.46866955 -2.9233601 1.986021 -4.2227948 3.285456
Sep 1973 -0.19856886 -2.6607410 2.263603 -3.9641363 3.566999
Oct 1973 0.04145273 -2.4282486 2.511154 -3.7356295 3.818535
Nov 1973 1.26045012 -1.2168277 3.737728 -2.5282193 5.049120
Dec 1973 0.54951402 -1.9353875 3.034416 -3.2508149 4.349843

Relativamente aos intervalos de confiança (IC) que contém o valor real, verificamos que a quantidade de
valores reais que estavam contidos no IC 80%: foi 29 e a auantidade de valores reais que estavam contidos
no intervalo de 95%: 33.

10
C HAPTER 3 – R ESULTADOS

F IGURA 3.9
Plot da comparação da previsão com os valores reais.

F IGURA 3.10
Plot do modelo ajustado de HoltWinters; plot de previsão do modelo.

Quanto à verificação dos resíduos, espera-se que os erros sejam “white noise” para que o modelo tenha
captado toda a informação disponível nos dados. Verificamos na Figura 3.11, sobre os resíduos, que a
média aproxima-se de zero, (ver gráfico dos resíduos de HoltWinters) se traçarmos uma linha com a média
no 1.º gráfico a visualização seria melhorada, com a estacionariedade, os resíduos não são correlacionados
(ver fig ACF dos resíduos), a variância parece constante (não parece variar no tempo) e os resíduos estão
normalmente distribuidos. A distribuição normal / Gaussiana pode indicar que a série é estacionária.
Mesmo assim, pelos gráficos não nos garante a cem por cento que a série é estacionária. Contudo,
consideramos que os pressupostos foram cumpridos.
A análise do ACF dos resíduos dá-nos uma ideia da estacionariedade da série mas não garante que seja
totalmente verdade, com um teste à estacionariedade podemos certificar. Aplicamos o teste Dickey-Foller
(ADF) e obtivemos um valor crítico ADF de -6.353 menor que o valor tau2 (-2.88), logo confirma-se que
série é estacionária (ver resultado do teste a seguir).

11
C HAPTER 3 – R ESULTADOS

F IGURA 3.11
Resíduos do modelo.

###############################################
# Augmented Dickey-Fuller Test Unit Root Test #
###############################################

Test regression drift

Call:
lm(formula = z.diff ~ z.lag.1 + 1 + z.diff.lag)

Residuals:
Min 1Q Median 3Q Max
-3.2044 -0.9776 -0.3595 0.7248 4.7726

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.82649 0.31982 5.711 8.42e-08 ***
z.lag.1 -1.09353 0.17212 -6.353 4.02e-09 ***
z.diff.lag1 0.16841 0.15090 1.116 0.266664
z.diff.lag2 0.37727 0.13795 2.735 0.007198 **
z.diff.lag3 0.46839 0.12980 3.609 0.000451 ***
z.diff.lag4 0.39872 0.11821 3.373 0.001004 **
z.diff.lag5 0.18474 0.08916 2.072 0.040428 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.557 on 119 degrees of freedom


Multiple R-squared: 0.4901, Adjusted R-squared: 0.4644
F-statistic: 19.06 on 6 and 119 DF, p-value: 1.822e-15

Value of test-statistic is: -6.3532 20.1823

Critical values for test statistics:


1pct 5pct 10pct
tau2 -3.46 -2.88 -2.57
phi1 6.52 4.63 3.81

12
C APÍTULO 4

D ISCUSSÃO

Discutimos o problema de identificar sinais periódicos em séries temporais. Os dados do clima, como
o caso da precipitação corresponde a uma série temporal sazonal. O que lemos em diversos artigos
científicos, que poderiamos aqui referir alguns, mas não o fazemos por questões de tempo, é que há
tendência da diminioção da precipitação mas os eventos apresentam-se com uma maior intensidade, ou
seja, chove mais de cada vez mas no seu total anual a quantidade tende a ser menor. Os dados aqui
apresentados comprovam isso mesmo.

13
C APÍTULO 5

C ONCLUSÃO

O modelo apresentado é bastante bom para explicar os dados, uma vez que os residuos são quase não
correlacionados. E isso é o que pretendemos de um modelo: que produza resíduos não correlacionados, o
que significa que a correlação serial nos dados foi explicada. Os gráficos ACF e PACF sugerem a exclusão
de modelos de médias móveis da lista de possíveis candidatos. Podemos escolher o melhor modelo usando
o critério AIC. Neste trabalho poderiamos ainda testar as várias combinações e verificar os diagnósticos
de cada modelo para ver qual funciona melhor. Para algumas sérires temporais, como por exemplo com
observações diárias, pode haver mais do que um componente sazonal, correspondendo a difereentes
períodos sazonais. Poderiamos aplicar outros modelos ao conjunto de dados da precipitação, como o
exemplo do modelo Autorregressivo (AR). Como há limitação no tempo para concluir este trabalho, não
permitiu aplicar outros testes e efetuar a respetiva análise.

14
C APÍTULO 6

R EFERÊNCIAS B IBLIOGRÁFICAS

Chatfield, C., Xing, H. (2019). The analysis of time series: an introduction with R. Chapman and
hall/CRC.
Cowpertwait, P. S., Metcalfe, A. V. (2009). Introductory time series with R. Springer Science Business
Media.
Skiena, S. S. (2017). The data science design manual. Springer.
Shumway, R. H., Stoffer, D. S. (2011). Time series and its applications: With R examples. Springer
Science, 1-202.

15
C APÍTULO 7

A PENDICE

Bibliotecas
library ( tidyverse )
library ( base )
library ( lubridate )
library ( clock )
library ( gganimate )
library ( purrr )
library ( dplyr )
library ( Matrix )
l i b r a r y ( lme4 )
library ( astsa )
library ( xts )
l i b r a r y ( zoo )
l i b r a r y ( TTR )
l i b r a r y ( quantmod )
library ( forecast )
library ( urca )
library ( car )
library ( dygraphs )
library ( readr )
library ( " readxl " )

DQP <− read _ d e l i m ( "DQP . t x t " , " \ t " , e s c a p e _ d o u b l e = FALSE ,


t r i m _ws = TRUE)
c l a s s (DQP)

DQP <− a s _ t i b b l e (DQP)


summary (DQP)
h e a d (DQP)
dim (DQP)

# D e f i n i r o p e r o d o de d a d o s como d a t a
p e r i o d <− d a t a _ frame ( d a t e = s e q ( a s . D a t e ( " 1961 −01 −01 " ) ,
a s . D a t e ( " 1989 −12 −31 " ) , by = 1 ) )

16
# S u b s t i t u i r a primeira coluna pela s rie di r i a no f o r m a t o d a t a
names (DQP)

# Trocar a primeira coluna pela s rie di r i a no f o r m a t o d a t a


DQP= c b i n d ( p e r i o d , DQP [ , 3 ] )
dim (DQP)
h e a d (DQP)
# Renomeando a s c o l u n a s
colnames (DQP) <− c ( " d a t e " , " c s " )

# Reagrupando o s d a d o s d i r i o s em m e n s a i s
DQPm=DQP %>% g r o u p _by ( month= f l o o r _ d a t e ( date , " month " ))%>% s u m m a r i z e ( c s =sum ( c s ) )
dim (DQPm)
# Guardar o s d a d o s o r g a n i z a d o s p o r m e s e s
DQPom=DQPm
summary (DQPm)
s t r (DQPm)
c l a s s (DQPm)
View (DQPom)
h e a d (DQPom)
names (DQPm)

#Explora o dos dados


l a y o u t ( matrix ( 1 : 2 , ncol = 2 ) )

h i s t (DQPm$ cs , main= " P r e c i p i t a o − C a s a l S o e i r o " , x l a b = " (mm m i l i m e t r o s ) " ,


y l a b = " F r e q u n c i a " ) ## h i s t o g r a m a
h i s t (DQPm$ cs , p r o b =T , c o l = " g r e y " , main = " P r e c i p i t a o − Casal Soeiro " ,
ylab = " Densidade " ,
xlab =" ( mil m i l i m t e t r o s ) " )
l i n e s ( d e n s i t y (DQPm$ c s ) , c o l = " b l u e " , lwd = 2 )
l i n e s ( d e n s i t y (DQPm$ cs , a d j u s t = 2 ) , l t y = " d o t t e d " , c o l = " d a r k g r e e n " , lwd =2 , )
l i n e s ( d e n s i t y (DQPm$ cs , a d j u s t = 3 ) , l t y = " d a s h e d " , c o l = " r e d " , lwd = 2 )

c o r e s =c ( ' b l u e ' , ' red ' , ' pink ' , ' orange ' , ' gray ' ,
' # fb5772 ' , ' # d953bd ' , ' # c26a31 ' , ' #919 c75 ' , ' # d312b4 ',
' #4549 e5 ' , ' #6 f 9 5 e f ' , ' # f15050 ' , ' #54 c 2 d e ' , ' #8 f 2 e 7 8 ',
' #1412 e f ' , ' #9 f 8 e 0 3 ' , ' # e86255 ' , ' #6 e2802 ' , ' #318 f 5 d ',
' #9 d 0 c e e ' , ' #95 b631 ' , ' #376 ab5 ' , ' # ed53c0 ' , ' # a76600 ')
b o x p l o t (DQPm$ cs , col = cores )

q q P l o t (DQPm$ cs , y l a b = " P r e c i p i t a o ( mil m i l i m e t r o s ) " ,


x l a b = " Normal : q u a n t i s " )
mtext ( " P r e c i p i t a o − Casal Soeiro " ,
o u t e r =TRUE , c e x =1 ,
l i n e = −2)

m e u x l s x <− "DADOS . x l s x "


DADOS <− read _ e x c e l ( path = meuxlsx , s h e e t = 1 )

17
dd <− a s . d a t a . frame (DADOS[DADOS$ ano >1961 & DADOS$ ano < 1 9 8 9 , ] )
dd $ i d <− 1 : l e n g t h ( dd $q )

names ( dd )
h e a d ( dd )
dim ( dd )
par ( mfrow=c ( 1 , 1 ) )
library ( lubridate )
ymd ( p e r i o d )
month ( p e r i o d )
year ( period )
c o r e s =c ( ' b l u e ' , ' r e d ' , ' p i n k ' , ' o r a n g e ' , ' g r a y ' ,
' # f b 5 7 7 2 ' , ' # d953bd ' , ' # c 2 6 a 3 1 ' , ' #919 c75 ' , ' # d312b4 ',
' #4549 e5 ' , ' #6 f 9 5 e f ' , ' # f 1 5 0 5 0 ' , ' #54 c 2 d e ' , ' #8 f 2 e 7 8 ',
' #1412 e f ' , ' #9 f 8 e 0 3 ' , ' # e86255 ' , ' #6 e2802 ' , ' #318 f 5 d ',
' #9 d 0 c e e ' , ' #95 b631 ' , ' #376 ab5 ' , ' # e d 5 3 c 0 ' , ' # a76600 ')
b o x p l o t ( ( dd $ c s ) ~ month ( dd $mes ) , c o l = c o r e s ,
main= " P r e c i p i t a o em C a s a l S o e i r o " ,
ylab =" P r e c i p i t a o " , xlab =" M s " )
# Remover a p r i m e i r a c o l u n a
DQPm<−DQPom[ , − 1 ]

# dados
h e a d (DQPm)

par ( mfrow=c ( 1 , 2 ) )
t s <− t s (DQPm)
p l o t ( t s , main = " S r i e T e m p o r a l : C a s a l S o e i r o " ,
x l a b = " Meses :
1961 −1989 " , y l a b = " P r e c i p i t a o ( mil m i l i m e t r o s ) " )

#ACF e PACF
par ( mfrow=c ( 1 , 2 ) )
# Plot ts
r <− t s (DQPm, f r e q u e n c y =12 , s t a r t = 1 9 6 1 )
class ( r )
length ( r )

t s p l o t ( l o g ( r ) , main= " l o g ( r ) " , y l a b = " " )


l a g 1 . p l o t ( r , 1 2 ) # M a t r i z e s de g r f i c o de d i s p e r s o ,
ver as r e l a e s nao l i n e a r e s

plot ( r , ylab =" P r e c i p i t a o ( m i l m i l i m e t r o s " , x l a b = " Ano " ,


main= " C a s a l S o e i r o ( c s ) " )
acf ( r )
a c f ( r , p l o t =FALSE )

pacf ( r )

18
p a c f ( r , p l o t =FALSE )

# G r a f i c o d o s d a d o s com d e t a l h e s
dygraph (
data = r ,
main = " P r e c i p i t a o em C a s a l S o e i r o e n t r e 1961 a 1989 " ,
x l a b = " Ano " ,
ylab = " P r e c i p i t a o ( mil m i l i m e t r o s ) " )

# autoplot ( r )

# Modelagem A d i t i v a
d e c o m p o s e A d i t i v a <− decompose (
x = r,
type = " add iti ve " )

# g r a f i c o da d e c o m p o s i c a o da modelagem a d i t i v a
plot ( decomposeAditiva )

# Modelagem m u l t i p l i c a t i v a
d e c o m p o s e M u l t i p l i c a c a o <− decompose (
x = r,
type = " m u l t i p l i c a t i v e " )

# G r a f i c o d e c o m p o s i o da modelagem m u l t i p l i c a t i v a
plot ( decomposeMultiplicacao )

par ( mfrow=c ( 1 , 1 ) )
monthplot ( r , ylab =" P r e c i p i t a o ( m i l mm) " , main= " C a s a l S o e i r o " , x l a b = " Meses " )
g g s u b s e r i e s p l o t ( r , ylab =" P r e c i p i t a o ( m i l mm) " , main= " C a s a l S o e i r o " ,
x l a b = " Meses " )
g g s e a s o n p l o t ( r , ylab =" P r e c i p i t a o ( m i l mm) " , main= " S a z o n a l i d a d e :
Casal Soeiro " ,
x l a b = " Meses " ) # g r a f i c o s a z o n a l

# d e i x a r 2 ou m a i s a n o s p a r a p r e v i s o
d a t a _ sub <− window ( r , s t a r t = c ( 1 9 6 1 , 1 ) , end = c ( 1 9 7 1 , 1 2 ) )
c l a s s ( d a t a _ sub )
modelo <− H o l t W i n t e r s ( d a t a _ sub ) # modelo p a r a d a d o s
com t e n d n c i a e s a z o n a l i d a d e
p l o t ( modelo , main = " A j u s t e do modelo " , x l a b = " Ano " )
modelo

#previs o
prev <− f o r e c a s t ( modelo )
p l o t ( prev , main = " P r e v i s o " , x l a b = " Ano " , y l a b = " P r e c i p i t a o ")
a b l i n e ( v = seq ( 1 9 6 1 , 1 9 7 1 , 1 ) , c o l = " gray60 " , l t y = 3)
# C o m p a r a o da p r e v i s o p o n t u a l com o s v a l o r e s r e a i s
prev <− a s . d a t a . frame ( prev )

19
p r e d i t o s <− t s ( prev $ ` P o i n t F o r e c a s t ` , s t a r t = c ( 1 9 6 5 , 1 ) , end = c ( 1 9 6 7 , 1 2 ) ,
frequency = 12)
r e a i s <− window ( r , s t a r t = c ( 1 9 6 5 , 1 ) , end = c ( 1 9 6 7 , 1 2 ) )
p l o t ( r e a i s , y l a b = NULL, main = " C o m p a r a o da p r e v i s o com v a l o r e s r e a i s " )
l i n e s ( preditos , col = 2)
l e g e n d ( " t o p l e f t " , l e g e n d =c ( " P r e d i t o s " , " R e a i s " ) ,
c o l =c ( " r e d " , " b l a c k " ) , l t y =1 , c e x = 0 . 8 )
# v e r s e o s IC c o n t e m o v a l o r r e a l
l o w e r <− prev $ `Lo 80 `
upper <− prev $ ` Hi 80 `
c a t ( " Q u a n t i d a d e de v a l o r e s r e a i s que e s t a v a m c o n t i d o s no IC 80%: " ,
sum ( l o w e r <= r e a i s & r e a i s <= upper ) )
c a t ( " Q u a n t i d a d e de v a l o r e s r e a i s que e s t a v a m c o n t i d o s
no i n t e r v a l o de 95%: " , sum ( prev $ `Lo 95 ` <= r e a i s & r e a i s
<= prev $ ` Hi 9 5 ` ) )

# R e s i d u o s ou e r r o s
a u t o p l o t ( r e s i d u a l s ( modelo ) )
c h e c k r e s i d u a l s ( modelo )
summary ( modelo )

# T e s t e de e s t a c i o n a r i e d a d e
library ( t s e r i e s )
l i b r a r y ( TSA )

a d f . t e s t ( d a t a _ sub , a l t e r n a t i v e = c ( " s t a t i o n a r y " , " e x p l o s i v e " ) ,


k = t r u n c ( ( l e n g t h ( d a t a _ sub ) − 1 ) ^ ( 1 / 3 ) ) )

a d f . t e s t ( d a t a _ sub , " s t a t i o n a r y " )


a d f . t e s t ( d i f f ( d a t a _ sub ) , " s t a t i o n a r y " )

a d f . t e s t ( d a t a _ sub )
y <− d i f f i n v ( d a t a _ sub ) # c o n t a i n s a u n i t − r o o t |
# c o n t m uma r a i z u n i t r i a . a j u s t a d o
adf . t e s t ( y )

mean ( d a t a _ sub )
var ( d a t a _ sub )

summary ( u r . d f ( d a t a _ sub , t y p e = " d r i f t " , 5 ) )

20

Você também pode gostar