Plug-in JVS - FR

library("JDCruncheR")

Introduction

This vignette explains how to create a JVS Quality Report with the {JDCruncheR} package. This only works for v3.

Definition of the JVS QR

Le plug-in JVS (Job Vacancy Survey) est un plug-in additionnel du logiciel JDemetra+.

Version 2

En version 2, il est disponible sur le GitHub Sace2015 : https://github.com/Sace2015/EurostatQR. Vous trouverez la documentation du plug-in sur ce même repo.

Version 3

En version 3, le plug-in est hebergé sur le GitHub de jdemetra, sur le repo jdplus-incubator. Pour récupérer la dernière version, il faut aller dans la partie Releases, puis télécharger le plug-in (nommé jdplus-eurostat-desktop-plugin).

Dsecription

Le plug-in contient 30 colonnes :

  • Series : le nom de la série
  • Method : l’algorithme d’ajustement (Tramo-Seats ou X13) et la spécification
  • Period : la fréquence de nos séries (12 pour mensuelle et 4 pour trimestrielle)
  • Nobs : le nombre d’observation
  • Start : la date de début de nos séries
  • End : la date de fin de nos séries
  • Adjustment : le type d’ajustement effectué (CVS, CJO ou CVS-CJO)
  • Presence of Seasonality in the Raw Series : Y a t-il de la saisonnalité dans les séries brutes ?
  • Presence of TD effects : Y a t-il des effets de calendrier dans les séries brute ?
  • Log-Transformation : Les séries ont-elles été log-transformés (modèle additif ou multiplicatif) ?
  • ARIMA Model : le modèle ARIMA du pré-ajustement
  • LeapYear : Y a t-il présence d’un effet année bissextile ?
  • MovingHoliday : Y a t-il présence d’un effet de Pâques ?
  • NbTD : le nombre de régresseurs de calendrier
  • Noutliers : le nombre d’outliers
  • Outlier1, Outlier2, Outlier3 : Les 3 outliers les plus importants
  • Residual Seasonality in SA Series (F-test) : Présence de saisonnalité résiduelle dans les séries désaisonnalisées
  • Residual TD Effect : Présence d’effet de calendrier dans les séries désaisonnalisées
  • Q-Stat (for X13) : Statistique Q finale (pour les séries ajustées par X13)
  • Final Henderson Filter : Longueur du filtre d’Henderson final (pour les séries ajustées par X13)
  • Stage 2 Henderson Filter : Longueur du filtre d’Henderson utilisé dans l’estimation provisoire de la tendance cycle dans la table D10 (pour les séries ajustées par X13)
  • Seasonal Filter : Filtre saisonnier (pour les séries ajustées par X13)
  • Irregular Standard-Deviation : Ecart type de la composante irrégulière (définie par \(SA - T\))
  • Quality (for TS) : Critère de qualité de JDemetra+
  • Max-Adj : Indicateur de la taille de l’ajustement CVS et CJO

\[ 100 \times max(\left | \frac{Y_t - SA_t}{Y_t}\right |) \]

  • Autocorrelation of order 1 of the SA series : Autocorrelation de la série ajustée
  • Normal Test (P-value) : Test de normalité
  • Autocorrelation negative and significant : Affichage d’un warning dans le cas d’autocorrelation négatives et significatives

Création des sorties de JDemetra+

Pour créer un rapport de qualité JVS, vous devez utiliser le cruncher JDemetra+ version 3. Tout d’abord, si vous n’avez pas encore téléchargé le cruncher JDemetra+, vous pouvez le télécharger depuis GitHub : https://github.com/jdemetra/jdplus-main/releases. Le fichier à télécharger commence par “jwsacruncher-standalone”.

Pour lancer le cruncher, vous pouvez utiliser le package {rjwsacruncher} avec des options spécifiques.

L’objectif de cette étape est de générer un fichier demetra_m contenant de nombreuses informations sur les séries à étudier, ainsi que plusieurs fichiers contenant les séries composantes (y, sa, s et t).

Pour générer ces fichiers, voici les options à utiliser :

library("rjwsacruncher")

options(
    is_cruncher_v3 = TRUE,
    default_matrix_item = c(
        "span.start",
        "span.end",
        "log",
        "span.n",
        "regression.nout",
        "regression.ntd",
        "m-statistics.m7",
        "decomposition.seasonal-filters",
        "decomposition.trend-filter",
        "decomposition.d7-trend-filter",
        "quality.summary",
        "regression.lp",
        "regression.leaster",
        "diagnostics.seas-sa-ac1:3",
        "diagnostics.seas-sa-ac1",
        "diagnostics.seas-lin-combined",
        "regression.out(*)",
        "regression.td-ftest:3",
        "residuals.lb:3",
        "diagnostics.td-sa-last:2",
        "diagnostics.seas-sa-f:2",
        "arima.p", "arima.d", "arima.q", "arima.bp", "arima.bd", "arima.bq",
        "m-statistics.q", "m-statistics.q-m2"
    ),
    default_tsmatrix_series = c(
        "decomposition.y_cmp",
        "decomposition.s_cmp",
        "decomposition.sa_cmp",
        "decomposition.t_cmp"
    )
)

cruncher_and_param(
    workspace = "path/to/the/workspace/file.xml",
    cruncher_bin_directory = "path/to/the/cruncher/v3/bin/directory",
    csv_layout = "vtable",
    short_column_headers = FALSE,
    refreshall = FALSE,
    v3 = TRUE,
    delete_existing_file = TRUE,
    policy = "None"
)

Après avoir lancé ce code là, vous devriez avoir généré 5 fichiers.

Creation du rapport JVS

Uns fois le cruncher lancé et les outputs générés, on peut créer notre rapport JVS :

# Chemin menant au dossier contenant les fichiers CSV
dir_path <- system.file(
    "extdata",
    "WS/WS_world/Output/SAProcessing-1",
    package = "JDCruncheR"
)

JVS <- extract_JVS(dir = dir_path)
Series Method Period Nobs Start End Adjustment
Siachen Glacier (frozen) X13 12 300 2000-01-01 2024-12-01 SCA
Nagorno-Karabakh (frozen) X13 12 300 2000-01-01 2024-12-01 SA
Mongolia (frozen) X13 12 300 2000-01-01 2024-12-01 SA
India (frozen) X13 12 300 2000-01-01 2024-12-01 SCA
Nepal (frozen) X13 12 300 2000-01-01 2024-12-01 SA
Philippines (frozen) X13 12 300 2000-01-01 2024-12-01 SA

L’objet JVS est un dataframe contenant notre rapport JVS. pour l’enregistrer il faut l’écrire dans un fichier.

Export

Pour exporter le rapport de qualité JVS, vous devez utiliser la fonction write. Le rapport peut être exporté sous forme de fichier .csv :

write(JVS, format = "csv", export_dir = "chemin/vers/le/répertoire/d'export", overwrite = TRUE)

Le rapport peut être exporté sous forme de fichier .xlsx :

write(JVS, format = "xlsx", export_dir = "chemin/vers/le/répertoire/d'export", overwrite = TRUE)

Comparaison : v3 / R

X

Dans R, cette colonne s’appelle “Series”.

Method

Dans R, les noms des spécifications sont simplement “X13” ou “Tramo-Seats”, car aucune précision n’est donnée quant au type de spécification dans l’output du cruncher.

Period, nobs, Start

Aucune différence.

End

Dans la version 3, les dates correspondent au dernier jour de la période, tandis que dans R, elles correspondent au premier jour de la période.

Adjustment

Aucune différence.

Tests

Pour les tests :

  • Presence of Seasonality in the RAW Series
  • Presence of TD effects
  • Residual Seasonality in SA Series F-test
  • Residual TD Effect

Très légères différences dues à des seuils différents entre l’interface et le cruncher.

Log transformation, ARIMA Model, Leapyear, MovingHoliday, NbTD, Noutliers, Outlier1, Outlier2, Outlier3, Q-stat for X13, Stage 2 Henderson Filter, Final Henderson Filter, Seasonal.Filter

Aucune différence.

Irregular Standard Deviation

Il existe de légères différences entre la version v3 (qui utilise le nombre correct de degrés de liberté) et le code R, qui utilise df = 1 (par défault avec la fonction sd()). Dans les prochaines versions du plug-in JVS, les résultats seront identiques entre la version R et la verions de jdplus-incubator.

Quality for TS, Max adj, Autocorrelation of order 1 of the SA series

Aucune différence.

Normal test

Le test est effectué à l’aide de R de base et peut présenter de légères différences (de l’ordre de 10**4).

Negative and significant autocorrelation

Aucune différence.