Upload
youssef-lamrani
View
192
Download
8
Embed Size (px)
Citation preview
TP1:series temporelles
Lamrani Alaoui Youssefpropose par:M Berrahou
Universite Cadi Ayyad,Faculte des Sciences et Techniques deMarrakech,Ingenieurie en Actuariat et Finace
20 octobre 2014
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Plan
1 introduction
2 detection de la tendance et de la saisonnalite
3 Estimation de la tendance et la saisonnalite par les methodesnon parametriques
4 elimination de la tendance et de la saisonnalite
5 decomposition de la serie temporelle
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Introduction
Introduction
Avant d’appliquer les methodes d’estimation et de selection demodele ,il convient de representer la serie chronologique observeeet de faire une premiere analyse de ses eventuellestandances,saisonnalites ou autres paticulaitees
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
presentation de la serie etudiee
le logeciel R dispose un tas de bases de donnees qu’on peuttavailler avec,cettes bases sont obtenues par la fonction :
> data()
telechargement de notre base d’etude,la serie INTERNATIONALAIRLINE PASSENGERS qui presente le nombre de voyageurs enavion sur une periode de 144 mois
> data<-AirPassengers
> data
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
1949 112 118 132 129 121 135 148 148 136 119 104 118
1950 115 126 141 135 125 149 170 170 158 133 114 140
1951 145 150 178 163 172 178 199 199 184 162 146 166
1952 171 180 193 181 183 218 230 242 209 191 172 194
1953 196 196 236 235 229 243 264 272 237 211 180 201
1954 204 188 235 227 234 264 302 293 259 229 203 229
1955 242 233 267 269 270 315 364 347 312 274 237 278
1956 284 277 317 313 318 374 413 405 355 306 271 306
1957 315 301 356 348 355 422 465 467 404 347 305 336
1958 340 318 362 348 363 435 491 505 404 359 310 337
1959 360 342 406 396 420 472 548 559 463 407 362 405
1960 417 391 419 461 472 535 622 606 508 461 390 432
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
representations graphiques
visualisation du chronogramme de la serie,c’est-a-dire le diagrammedes points (date, valeur de l’observation) grace a plot.ts()
> plot.ts(AirPassengers,xlab="annee",
+ ylab="nombre de passers")
année
nom
bre
de p
asse
rs
1950 1952 1954 1956 1958 1960
100
400
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
stabilisation de la variance
Interpretation
On note sur ce graphique que le nombre de passagers a tendance aaugmenter regulierement, le graphe de la serie indique aussi que savariabilite augmente avec le temps.
pour eliminer cette variabilite on fait appel a des tasfomationscomme log() ou
√()
pour notre cas on a opte pour le logarithme neperien de la serieobservee
> plot.ts(log(AirPassengers),xlab="annee",ylab="nombre
+ de passers")
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
stabilisation de la variance
année
nom
bre
de p
asse
rs
1950 1952 1954 1956 1958 1960
5.0
5.5
6.0
6.5
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Fonction d’autocorrelation ; detection de la tendance et dela saisonnalite
la detection d’une tendance ou d’une saisonnalite,parfois peut etrejustifiee par le compotement de son autocorelation ouautocorrelation partielle,calculons la fonction d’autocorrelation etd’autocorrelation partielle pour notre serie d’etude
> par(mfrow=c(1,2))
> acf(AirPassengers)
> pacf(AirPassengers)
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
0.0 0.5 1.0 1.5
−0.
20.
00.
20.
40.
60.
81.
0
Lag
AC
F
Series AirPassengers
0.5 1.0 1.5
−0.
50.
00.
51.
0
Lag
Par
tial A
CF
Series AirPassengers
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
interpretation
la fonction d’autocorrelation montre qu’il y a une periodiciteanuelle(12 mois)
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Remarque 1
par defaut la representation graphique montre egalementl’intervalle de confiance,celui en bleu au niveau 95%
Remarque 2
les parametres graphiques et le niveau de l’intervalle de confiancepeuvent etre modifies par les instructions qui suivent
> par(mfrow=c(1,2))
> plot(acf(AirPassengers,lag.max=length(AirPassengers)
+ ,plot=F),ci=.95,ci.col="red")
> plot(pacf(AirPassengers,lag.max=length(AirPassengers)
+ ,plot=F),ci=.95,ci.col="red")
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
0 2 4 6 8 10 12
−1.
0−
0.5
0.0
0.5
1.0
Lag
AC
F
Series AirPassengers
0 2 4 6 8 10 12
−0.
50.
00.
51.
0
Lag
Par
tial A
CF
Series AirPassengers
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
ci =ci0 ou ci0 est une valeur non nulle qui precise
le niveau strictement compris entre 0 et 1,
de l'intervallede confiance si ci0=0 l'intervallede confiance n'est represente,par defaut ci0=0.95
ci.col="red" permet de choisire la coleur de
l'intervalle de confiance lorsqu'il est repesente
ci.type=c("white","ma") permet de choisir le type de
l'intervalle de confiance represente
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Estimation de la tendance et la saisonnalite par lesmethodes non parametriques
Remarque
R possede une fonction qui permet d’estimer la tendance et lasaisonnalite par des methodes non parametriques rubustes
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
> fit <- stl(AirPassengers, s.window =20
+ , t.window = 20)
> plot(fit)
100
400
data
−50
50
seas
onal
200
400
tren
d
−40
040
1950 1952 1954 1956 1958 1960
rem
aind
er
time
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
> names(fit)
[1] "time.series" "weights" "call" "win" "deg"
[6] "jump" "inner" "outer"
> head(fit$time.series)
seasonal trend remainder
[1,] -21.440925 124.0766 9.364325
[2,] -26.852671 124.4280 20.424688
[3,] 2.860678 124.7794 4.359957
[4,] -4.905629 125.3969 8.508773
[5,] -4.797845 126.0143 -0.216502
[6,] 26.802340 126.7258 -18.528103
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
> par(mfrow=c(2,2))
> plot.ts(fit$time.series[,1])
> plot.ts(fit$time.series[,2])
> plot.ts(fit$time.series[,3])
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Time
seas
onal
1950 1954 1958
−50
Time
tren
d
1950 1954 1958
200
500
Time
rem
aind
er
1950 1954 1958
−40
40
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
une autre represenatation est possible avec la fonction montplot()
AirP
asse
nger
s
J F M A M J J A S O N D
100
200
300
400
500
600
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
seas
onal
J F M A M J J A S O N D
−50
050
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
tren
d
J F M A M J J A S O N D
200
300
400
500
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
elimination de la tendance et de la saisonnalite
la tendance et la saisonnalite peuvent etre eliminees en appliquantles operateurs de difference a la serie observee. la tendance pourraetre elimine par l’operateur de difference d’odre 1 alores que unesaisonnalite d’odre d,l’ordre de la difference doit etre specifiecomme argument de la fonction diff()
> serie1<-diff(AirPassengers,d)
> # pour enlever la saisonnalite d'ordre d
> serie2<-diff(diff(AirPassengers,d))
> # pour enlever la tendance
> plot(serie2)
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Remarque
la frequence de la serie analysee est une indication pour touver lavaleur de d,ainsi que le comportement de la fonctiond’autocorrelation
Resume
la figure qui suit montre la fonction emperique d’autocorelation etd’autocorrelation partielle du logarithme de la serie etudiee,nouspouvons y avoir le comportement de ses fonction d’autocorrelationapres avoir desaisonnalise la serie puis en appliquant l’operateur dedifference d’ordre 1 pour enlever la tendance
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
> par(mfrow=c(3,3))
> plot.ts(log(AirPassengers))
> plot(acf(AirPassengers,lag.max=length(AirPassengers)
+ ,plot=F))
> plot(pacf(AirPassengers,lag.max=length(AirPassengers)
+ ,plot=F))
> plot(diff(log(AirPassengers),12))
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
> plot(acf(diff(log(AirPassengers),12),lag.max=
+ length(AirPassengers),plot=F))
> plot(pacf(diff(log(AirPassengers),12),lag.max=
+ length(AirPassengers),plot=F))
> plot(diff(diff(log(AirPassengers),12)))
> plot(acf(diff(diff(log(AirPassengers),12)),lag.max=
+ length(AirPassengers),plot=F))
> plot(pacf(diff(diff(log(AirPassengers),12)),lag.max=
+ length(AirPassengers),plot=F))
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Time
log(
AirP
asse
nger
s)
1950 1954 1958
5.0
6.0
0 2 4 6 8 12
−0.
40.
20.
8
Lag
AC
F
Series AirPassengers
0 2 4 6 8 12
−0.
50.
5
Lag
Par
tial A
CF
Series AirPassengers
Time
diff(
log(
AirP
asse
nger
s), 1
2)
1950 1954 1958
0.0
0.2
0 2 4 6 8 10
−0.
20.
41.
0
Lag
AC
F
Series diff(log(AirPassengers), 12)
0 2 4 6 8 10
−0.
20.
20.
6
Lag
Par
tial A
CF
Series diff(log(AirPassengers), 12)
Time
diff(
diff(
log(
AirP
asse
nger
s), 1
2))
1950 1954 1958
−0.
150.
000.
15
0 2 4 6 8 10
−0.
40.
20.
8
Lag
AC
F
Series diff(diff(log(AirPassengers), 12))
0 2 4 6 8 10
−0.
30.
00.
2
Lag
Par
tial A
CF
Series diff(diff(log(AirPassengers), 12))
rem
aind
er
J F M A M J J A S O N D
−40
−20
020
4060
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
decomposition de la serie temporelle
> r <- decompose(AirPassengers)
> plot(r)
100
400
obse
rved
150
350
tren
d
−40
20
seas
onal
−40
040
1950 1952 1954 1956 1958 1960
rand
om
Time
Decomposition of additive time series
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
> names(r)
[1] "x" "seasonal" "trend" "random" "figure" "type"
> r$type
[1] "additive"
> par(mfrow=c(2,2))
> plot(r$seasonal)
> plot(r$trend)
> plot(r$random)
> plot(r$figure)
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
Time
r$se
ason
al
1950 1952 1954 1956 1958 1960
−40
040
Time
r$tr
end
1950 1952 1954 1956 1958 1960
150
300
450
Time
r$ra
ndom
1950 1952 1954 1956 1958 1960
−40
040
2 4 6 8 10 12
−40
040
Index
r$fig
ure
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles
on peut meme regarder la serie sans bruit
> renc<-r$seasonal+r$trend
> par(mfrow=c(1,2))
> plot(renc,main="serie sans bruit")
> plot.ts(AirPassengers,main="serie originale")
série sans bruit
Time
renc
1950 1954 1958
100
300
500
série originale
Time
AirP
asse
nger
s
1950 1954 1958
100
400
Lamrani Alaoui Youssef propose par:M Berrahou TP1:series temporelles