31
1 / 29 JDemetra+ and R: Analysing and Visualising Time Series Atanaska Nikolova 14/09/2018

JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

1 / 29

JDemetra+ and R:Analysing and VisualisingTime Series

Atanaska Nikolova 14/09/2018

Page 2: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Outline

• What is JDemetra+

• RJDemetra package

• Seasonal adjustment

• Go interactive!

• Future developments

2 / 29

Page 3: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

What is JDemetra+?

• Java based software

• National Bank of Belgium

• Deutsche Bundesbank and Eurostat

• Recommended for seasonal adjustment forofficial statisticshttps://ec.europa.eu/eurostat/cros/

content/software-jdemetra_en

3 / 29

Page 4: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

What is JDemetra+?

• Open source:https://github.com/jdemetra

• Java libraries used to build astand-alone software and R functions

• Specialised R package RJDemetra

4 / 29

Page 5: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

JDemetra+ Software

5 / 29

Page 6: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Use through R

• Requirements: rJava and Java SE 8+

• RJDemetra interface for JDemetra+

• jdemetra-R for more JD+ routines in R

• Available on Githubhttps://github.com/nbbrd/rjdemetra

https://github.com/nbbrd/jdemetra-R

6 / 29

Page 7: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

jdemetra-R

7 / 29

Page 8: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

jdemetra-R

• Functions need to be sourced as needed:

source("./R files/jd_init.R")

source("./R files/jd_ts.R")

source("./R files/jd_tempdisagg.R")

source("./R files/jd_cholette.R")

8 / 29

Page 9: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

RJDemetra

• Installation from Github:

install.packages("devtools")

library(devtools)

devtools::install_github("nbbrd/rjdemetra")

• Installation from zip file:

install("D:/R/Lib/rjdemetra-master")

9 / 29

Page 10: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

RJDemetra

10 / 29

Page 11: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Creating specifications

• Two methods available:

• TRAMO/SEATStramoseats spec def()

• X-13x13 spec def()

• Pre-defined default specifications available

11 / 29

Page 12: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Creating specifications

• Two methods available:

• TRAMO/SEATStramoseats spec def()

• X-13x13 spec def()

• Pre-defined default specifications available

11 / 29

Page 13: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Pre-defined specifications

12 / 29

Page 14: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Pre-defined specifications

• Editing default specifications

spec_user<-x13_spec_def(spec=("RSA5c"),

usrdef.outliersEnabled=TRUE,

usrdef.outliersType=c("LS","AO"),

usrdef.outliersDate=c("2009-01-01",

"2014-05-01"),

outlier.enabled=FALSE)

13 / 29

Page 15: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Seasonal Adjustment

• Using the defined specs

SA_x13<-x13(MBS,spec_user)

• Plotting the result (overlay and components)

plot(SA_x13)

14 / 29

Page 16: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Overlay graph only

plot(SA_x13, type_chart="sa-trend")

Sa, trend

Time

2008 2010 2012 2014 2016 2018

200

250

300

350

SeriesTrendSeasonally adjusted

15 / 29

Page 17: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Components graph only

plot(SA_x13, type_chart="cal-seas-irr")

Cal., sea., irr.

Time

2008 2010 2012 2014 2016 2018

0.8

0.9

1.0

1.1

1.2

1.3

Calendar effectsSeas (component)Irregular

16 / 29

Page 18: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Various Options

17 / 29

Page 19: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Let it Shine

• Using output for Shiny application

• Useful for training purposes

• Interactive dashboards for client businessareas

• Facilitate understanding

18 / 29

Page 20: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Let it Shine (credit to Jennie Davies)

19 / 29

Page 21: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Let it Shine (credit to Jennie Davies)

20 / 29

Page 22: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Benefits Over Other Packages• Speed (e.g. compared to seasonal)

system.time(tramoseats_def(MBS))

mean system mean elapsed

0.0017 0.2228

system.time(seas(MBS))

mean system mean elapsed

0.0410 0.6010

• Direct function call to Java library (no use ofintermediary files)

21 / 29

Page 23: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Benefits Over Other Packages• Speed (e.g. compared to seasonal)

system.time(tramoseats_def(MBS))

mean system mean elapsed

0.0017 0.2228

system.time(seas(MBS))

mean system mean elapsed

0.0410 0.6010

• Direct function call to Java library (no use ofintermediary files)

21 / 29

Page 24: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Benefits Over Other Packages

• Fitting ARIMA model benefits from automaticcheck procedures

• Deterministic effects

• Transformation

22 / 29

Page 25: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Benefits Over Other Packages

• stats (2-year MAPE = 2.36):

arima(MBS,order=c(1,0,0),

seasonal=list(order=c(0,1,1),period=12))

• RJDemetra (2-year MAPE = 1.29)

regarima(MBS,regarima_spec_def_tramoseats(

arima.p=1,arima.d=0,

arima.q=0,arima.bp = 0,

arima.bd = 1,arima.bq = 1))

23 / 29

Page 26: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Benefits Over Other Packages

• Speed

• Officially recommended by ECB

• Open source - ongoing developments

• Opportunity for development participationand feedback

• Good maintenance

• Support by ESS Seasonal AdjustmentHelpdesk

24 / 29

Page 27: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Future Developments

• JDemetra+ 3.0https://github.com/nbbrd/jd3-rtests

• Available for testing

• High frequency data: daily and weekly

25 / 29

Page 28: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Future Developments

• Example functions (jd3-rtests-master)

• jd3 fractionalairlinedecomposition

• jd3 x11

• jd3 stl

• More information:https://github.com/nbbrd/jd3-rtests/

wiki/High-frequency-series

26 / 29

Page 29: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Future Developments

27 / 29

Page 30: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Future Developments

• Package RJDemetra still under development

• Opportunities for contribution

• Continuously evolving and improving

28 / 29

Page 31: JDemetra+ and R: Analysing and Visualising Time Seriesr-project.ro/conference2018/presentations/Atanaska... · 2018-10-10 · 1/29 JDemetra+ and R: Analysing and Visualising Time

Special thanks to:

• Seasonal Adjustment Centre of Excellence(SACE)

• RJDemetra main developers:

Anna Michlek (ECB-NBB)Alain Quartier-la-Tente (INSEE)

Thank [email protected]

29 / 29