Type: Package
Title: Interface Between the 'JDemetra+' Cruncher and R, and Quality Report Generator
Version: 0.3.5
Description: Tool for generating quality reports from cruncher outputs (and calculating series scores). The latest version of the cruncher can be downloaded here: https://github.com/jdemetra/jwsacruncher/releases.
License: EUPL version 1.1 | EUPL version 1.2 [expanded from: EUPL]
URL: https://github.com/InseeFr/JDCruncheR, https://inseefr.github.io/JDCruncheR/
BugReports: https://github.com/InseeFr/JDCruncheR/issues
Depends: R (≥ 4.1)
Imports: openxlsx, stats, tools, utils
Suggests: testthat (≥ 3.0.0)
Config/testthat/edition: 3
Encoding: UTF-8
RoxygenNote: 7.3.2
NeedsCompilation: no
Packaged: 2025-04-15 08:43:56 UTC; UTZK0M
Author: Tanguy Barthelemy [aut, cre, art], Alain Quartier-la-Tente ORCID iD [aut], Institut national de la statistique et des études économiques [cph] (https://www.insee.fr/), Anna Smyk [aut]
Maintainer: Tanguy Barthelemy <tanguy.barthelemy@insee.fr>
Repository: CRAN
Date/Publication: 2025-04-15 09:10:02 UTC

JDCruncheR: Interface Between the 'JDemetra+' Cruncher and R, and Quality Report Generator

Description

logo

Tool for generating quality reports from cruncher outputs (and calculating series scores). The latest version of the cruncher can be downloaded here: https://github.com/jdemetra/jwsacruncher/releases.

Author(s)

Maintainer: Tanguy Barthelemy tanguy.barthelemy@insee.fr [artist]

Authors:

Other contributors:

See Also

Useful links:


Quality report objects

Description

mQR_matrix() and QR_matrix() are creating one (or several) quality report. The function is.QR_matrix() and is.mQR_matrix() are functions to test whether an object is a quality report or a list of quality reports.

Usage

QR_matrix(modalities = NULL, values = NULL, score_formula = NULL)

mQR_matrix(x = list(), ...)

is.QR_matrix(x)

is.mQR_matrix(x)

Arguments

modalities

a data.frame containing the output variables' modalities (Good, Bad, etc.)

values

a data.frame containing the output variables' values (test p-values, test statistics, etc.) Therefore, the values data frame can contain more variables than the data frame modalities.

score_formula

the formula used to calculate the series score (if defined).

x

a QR_matrix object, a mQR_matrix object or a list of QR_matrix objects.

...

objects of the same type as x.

Details

AQR_matrix object is a list of three items:

Value

QR_matrix() creates and returns a QR_matrix object. mQR_matrix() creates and returns a mQR_matrix object (ie. a list of QR_matrix objects). is.QR_matrix() and is.mQR_matrix() return Boolean values (TRUE or FALSE).

See Also

Traduction française


Editing the indicators list

Description

Functions to remove indicators (remove_indicators()) or retrain some indicators only (retain_indicators()) from QR_matrix or mQR_matrix objects. The series names (column "series") cannot be removed.

Usage

remove_indicators(x, ...)

retain_indicators(x, ...)

Arguments

x

a QR_matrix or mQR_matrix object.

...

names of the variable to remove (or keep)

Value

remove_indicators() returns the same object x reduced by the flags and variables used as arguments ... So if the input x is a QR_matrix, an object of class QR_matrix is returned. If the input x is a mQR_matrix, an object of class mQR_matrix is returned.

See Also

Traduction française

Other var QR_matrix manipulation: add_indicator(), recode_indicator_num()

Examples

# Path of matrix demetra_m
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extract the quality report from the demetra_m file
QR <- extract_QR(demetra_path)

# Compute the score
QR <- compute_score(QR, n_contrib_score = 2)

# Retain indicators
retain_indicators(QR, "score", "m7") # retaining "score" and "m7"
retain_indicators(QR, c("score", "m7")) # Same

# Remove indicators
QR <- remove_indicators(QR, "score") # removing "score"

extract_score(QR) # is NULL because we removed the score indicator


Adding an indicator in QR_matrix objects

Description

Function to add indicators in QR_matrix objects.

Usage

add_indicator(x, indicator, variable_name, ...)

Arguments

x

a QR_matrix or mQR_matrix object

indicator

a vector or a data.frame (cf. details).

variable_name

a string containing the name of the variables to add.

...

other parameters of the function merge.

Details

The function add_indicator() adds the chosen indicator to the values matrix of a quality report. Therefore, because said indicator isn't added in the modalities matrix, it cannot be used to calculate a score (except for weighting). Before using the added variable for score calculation, it will have to be coded with the function recode_indicator_num.

The new indicator can be a vector or a data.frame. In both cases, its format must allow for pairing:

Value

This function returns the same object, enhanced with the chosen indicator. So if the input x is a QR_matrix, an object of class QR_matrix is returned. If the input x is a mQR_matrix, an object of class mQR_matrix is returned.

See Also

Traduction française

Other var QR_matrix manipulation: QR_var_manipulation, recode_indicator_num()


Score calculation

Description

To calculate a score for each series from a quality report

Usage

## S3 method for class 'QR_matrix'
compute_score(
  x,
  score_pond = c(qs_residual_sa_on_sa = 30L, f_residual_sa_on_sa = 30L,
    qs_residual_sa_on_i = 20L, f_residual_sa_on_i = 20L, f_residual_td_on_sa = 30L,
    f_residual_td_on_i = 20L, oos_mean = 15L, oos_mse = 10L, residuals_independency =
    15L, residuals_homoskedasticity = 5L, residuals_skewness = 5L, m7 = 5L, q_m2 = 5L),
  modalities = c("Good", "Uncertain", "", "Bad", "Severe"),
  normalize_score_value,
  na.rm = TRUE,
  n_contrib_score,
  conditional_indicator = NULL,
  thresholds = getOption("jdc_thresholds"),
  ...
)

## S3 method for class 'mQR_matrix'
compute_score(x, ...)

Arguments

x

a QR_matrix or mQR_matrix object.

score_pond

the formula used to calculate the series score.

modalities

modalities ordered by importance in the score calculation (cf. details).

normalize_score_value

integer indicating the reference value for weights normalisation. If missing, weights will not be normalised.

na.rm

logical indicating whether missing values must be ignored when calculating the score.

n_contrib_score

integer indicating the number of variables to create in the quality report's values matrix to store the n_contrib_score greatest contributions to the score (cf. details). If not specified, no variable is created.

conditional_indicator

a list containing 3-elements sub-lists: "indicator", "conditions" and "condition_modalities". To reduce down to 1 the weight of chosen indicators depending on other variables' values (cf. details).

thresholds

list of numerical vectors. Thresholds applied to the various tests in order to classify into modalities Good, Uncertain, Bad and Severe. By default, the value of the "jdc_threshold" option is used. You can call the get_thresholds function to see what the thresholds object should look like.

...

other unused parameters.

Details

The function compute_score calculates a score from the modalities of a quality report: to each modality corresponds a weight that depends on the parameter modalities. The default parameter is c("Good", "Uncertain", "Bad","Severe"), and the associated weights are respectively 0, 1, 2 and 3.

The score calculation is based on the score_pond parameter, which is a named integer vector containing the weights to apply to the (modalities matrix) variables. For example, with score_pond = c(qs_residual_sa_on_sa = 10, f_residual_td_on_sa = 5), the score will be based on the variables qs_residual_sa_on_sa and f_residual_td_on_sa. The qs_residual_sa_on_sa grades will be multiplied by 10 and the f_residual_td_on_sa grades, by 5. To ignore the missing values when calculating a score, use the parameter na.rm = TRUE.

The parameter normalize_score_value can be used to normalise the scores. For example, to have all scores between 0 and 20, specify normalize_score_value = 20.

When using parameter n_contrib_score, n_contrib_score new variables are added to the quality report's values matrix. These new variables store the names of the variables that contribute the most to the series score. For example, n_contrib_score = 3 will add to the values matrix the three variables that contribute the most to the score. The new variables' names are i_highest_score, with i being the rank in terms of contribution to the score (1_highest_score contains the name of the greatest contributor, 2_highest_score the second greatest, etc). Only the variables that have a non-zero contribution to the score are taken into account: if a series score is 0, all i_highest_score variables will be empty. And if a series score is positive only because of the m7 statistic, 1_highest_score will have a value of "m7" for this series and the other i_highest_score will be empty.

Some indicators are only relevant under certain conditions. For example, the homoscedasticity test is only valid when the residuals are independant, and the normality tests, only when the residuals are both independant and homoscedastic. In these cases, the parameter conditional_indicator can be of use since it reduces the weight of some variables down to 1 when some conditions are met. conditional_indicator is a list of 3-elements sub-lists:

Value

a QR_matrix or mQR_matrix object.

See Also

Traduction française

Examples

# Path of matrix demetra_m
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extract the quality report from the demetra_m file
QR <- extract_QR(demetra_path)

# Calculer le score
QR <- compute_score(QR, n_contrib_score = 2)
print(QR)

# Extract the modalities matrix:
QR[["modalities"]][["score"]]


Exporting QR_matrix or mQR_matrix objects in an Excel file

Description

Exporting QR_matrix or mQR_matrix objects in an Excel file

Usage

export_xlsx(x, ...)

Arguments

x

a QR_matrix or mQR_matrix object.

...

other parameters of the function export_xlsx.QR_matrix.

Value

If x is a mQR_matrix, the function returns invisibly (via invisible(x)) the same mQR_matrix object as x. Else if x is a QR_matrix, the function returns invisibly (via invisible(x)) a workbook object created by XLConnect::loadWorkbook() for further manipulation.

See Also

Other QR_matrix functions: export_xlsx.QR_matrix(), export_xlsx.mQR_matrix(), extract_QR(), rbind.QR_matrix(), sort(), weighted_score()


Exporting QR_matrix objects in an Excel file

Description

To export a quality report in an Excel file.

Usage

## S3 method for class 'QR_matrix'
export_xlsx(x, file, auto_format = TRUE, overwrite = TRUE, ...)

Arguments

x

a QR_matrix object.

file

a character object with the path to the file to export que l'on veut créer

auto_format

logical indicating whether to format the output (auto_format = TRUE by default).

overwrite

logical indicating whether to create an Excel file if it doesn't exist yet (create = TRUE by default)

...

other unused arguments

Value

Returns invisibly (via invisible(x)) a workbook object created by XLConnect::loadWorkbook() for further manipulation.

See Also

Traduction française

Other QR_matrix functions: export_xlsx(), export_xlsx.mQR_matrix(), extract_QR(), rbind.QR_matrix(), sort(), weighted_score()


Exporting mQR_matrix objects in Excel files

Description

To export several quality reports in Excel files

Usage

## S3 method for class 'mQR_matrix'
export_xlsx(
  x,
  export_dir,
  layout_file = c("ByComponent", "ByQRMatrix", "AllTogether"),
  auto_format = TRUE,
  overwrite = TRUE,
  ...
)

Arguments

x

a mQR_matrix object to export.

export_dir

export directory.

layout_file

export parameter. By default, (layout_file = "ByComponent") and an Excel file is exported for each part of the quality report matrix (modalities and values matrices). To group both modalities and values reports/sheets into a single Excel file, use the option layout_file = "ByQRMatrix".

auto_format

logical indicating whether to format the output (auto_format = TRUE by default).

overwrite

logical indicating whether to create an Excel file if it doesn't exist yet (create = TRUE by default)

...

other unused arguments

Value

Returns invisibly (via invisible(x)) the same mQR_matrix object as x.

See Also

Traduction française

Other QR_matrix functions: export_xlsx(), export_xlsx.QR_matrix(), extract_QR(), rbind.QR_matrix(), sort(), weighted_score()


Extraction of a quality report

Description

To extract a quality report from the csv file containing the diagnostics matrix.

Usage

extract_QR(
  file,
  x,
  matrix_output_file,
  sep = ";",
  dec = ",",
  thresholds = getOption("jdc_thresholds")
)

Arguments

file

the csv file containing the diagnostics matrix. This argument supersedes the argument matrix_output_file.

x

data.frame containing the diagnostics matrix.

matrix_output_file

the csv file containing the diagnostics matrix.

sep

the separator used in the csv file (by default, sep = ";")

dec

the decimal separator used in the csv file (by default, dec = ",")

thresholds

list of numerical vectors. Thresholds applied to the various tests in order to classify into modalities Good, Uncertain, Bad and Severe. By default, the value of the "jdc_threshold" option is used. You can call the get_thresholds function to see what the thresholds object should look like.

Details

This function generates a quality report from a csv file containing diagnostics (usually from the file demetra_m.csv). The demetra_m.csv file can be generated by launching the cruncher (functions cruncher or cruncher_and_param) with the default export parameters, having used the default option csv_layout = "vtable" to format the output tables of the functions cruncher_and_param and create_param_file when creating the parameters file.

This function returns a QR_matrix object, which is a list of 3 objects:

If x is supplied, the file and matrix_output_file arguments are ignored. The file argument also designates the path to the file containing the diagnostic matrix (which can be imported into R in parallel and used with the x argument).

Value

a QR_matrix object.

See Also

Traduction française

Other QR_matrix functions: export_xlsx(), export_xlsx.QR_matrix(), export_xlsx.mQR_matrix(), rbind.QR_matrix(), sort(), weighted_score()

Examples

# Path of matrix demetra_m
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extract the quality report from the demetra_m file
QR <- extract_QR(file = demetra_path)

print(QR)

# Extract the modalities matrix:
QR[["modalities"]]
# Or:
QR[["modalities"]]


Score extraction

Description

To extract score variables from QR_matrix or mQR_matrix objects.

Usage

extract_score(
  x,
  format_output = c("data.frame", "vector"),
  weighted_score = FALSE
)

Arguments

x

a QR_matrix or mQR_matrix.

format_output

string of characters indicating the output format: either a data.frame or a vector.

weighted_score

logical indicating whether to extract the weighted score (if previously calculated) or the unweighted one. By default, the unweighted score is extracted.

Details

For QR_matrix objects, the output is a vector or the object NULL if no score was previously calculated. For mQR_matrix objects, it is a list of scores (NULL elements or vectors).

Value

extract_score() returns a data.frame with two column: the series name and their score.

See Also

Traduction française

Examples

# Path of matrix demetra_m
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extract the quality report from the demetra_m file
QR <- extract_QR(demetra_path)

# Compute the score
QR1 <- compute_score(x = QR, n_contrib_score = 5)
QR2 <- compute_score(
    x = QR,
    score_pond = c(qs_residual_sa_on_sa = 5, qs_residual_sa_on_i = 30,
                   f_residual_td_on_sa = 10, f_residual_td_on_i = 40,
                   oos_mean = 30, residuals_skewness = 15, m7 = 25)
)
mQR <- mQR_matrix(list(a = QR1, b = QR2))

# Extract score
extract_score(QR1)
extract_score(mQR)


Objets bilan qualité

Description

QR_matrix() permet de créer un objet de type QR_matrix contenant un bilan qualité.

Arguments

modalities

un data.frame contenant les modalités (Good, Bad, etc.) associées aux variables.

values

un data.frame contenant les valeurs (p-valeurs des tests, statistiques, etc.) associées aux variables. Peut donc contenir plus de variables que le data.frame modalities.

score_formula

formule utilisée pour calculer le score global (s'il existe).

x

un objet de type QR_matrix, mQR_matrix ou une liste d'objets QR_matrix.

...

des objets du même type que x.

Details

mQR_matrix() permet de créer un objet de type mQR_matrix qui est une liste de bilans qualité (donc d'objets QR_matrix).

is.QR_matrix() et is.mQR_matrix() permettent de tester si un objet est un bilan qualité ou une liste de bilans qualité.

Un objet de type QR_matrix est une liste de trois paramètres :

Value

QR_matrix() crée et renvoie un objet QR_matrix. mQR_matrix() crée et renvoie un objet mQR_matrix (c'est-à-dire une liste d'objets QR_matrix). is.QR_matrix() et is.mQR_matrix() renvoient des valeurs booléennes (TRUE ou FALSE).


Ajout d'un indicateur dans les objets QR_matrix

Description

Permet d'ajouter un indicateur dans les objets QR_matrix.

Arguments

x

objet de type QR_matrix ou mQR_matrix.

indicator

un vector ou un data.frame (voir détails).

variable_name

chaîne de caractères contenant les noms des nouvelles variables.

...

autres paramètres de la fonction merge.

Details

La fonction add_indicator() permet d'ajouter un indicateur dans la matrice des valeurs du bilan qualité. L'indicateur n'est donc pas ajouté dans la matrice des modalités et ne peut être utilisé dans le calcul du score (sauf pour le pondérer). Pour l'utiliser dans le calcul du score, il faudra d'abord le recoder avec la fonction recode_indicator_num.

L'indicateur à ajouter peut être sous deux formats : vector ou data.frame. Dans les deux cas, il faut que les valeurs à ajouter puissent être associées aux bonnes séries dans la matrice du bilan qualité :

Value

Cette fonction renvoie le même objet, enrichi de l'indicateur choisi. Ainsi, si l'entrée x est une matrice QR, un objet de la classe QR_matrix est renvoyé. Si le code d'entrée x est une matrice mQR, un objet de la classe mQR_matrix est renvoyé.


Calcul d'un score global

Description

Permet de calculer un score global à partir d'un bilan qualité

Arguments

x

Objet de type QR_matrix ou mQR_matrix.

score_pond

formule utilisée pour calculer le score global.

modalities

modalités triées par ordre d'importance dans le calcul du score (voir détails).

normalize_score_value

Chiffre indiquant la valeur de référence pour la normalisation des pondérations utilisées lors du calcul du score. Si le paramètre n'est pas renseigné, les poids ne seront pas normalisés.

na.rm

Booléen indiquant si les valeurs manquantes doivent être enlevées pour le calcul du score.

n_contrib_score

Entier indiquant le nombre de variables à créer dans la matrice des valeurs du bilan qualité contenant les n_contrib_score plus grandes contributrices au score (voir détails). S'il n'est pas spécifié, aucune variable n'est créée.

conditional_indicator

list contenant des listes ayant 3 éléments : "indicator", "conditions" et "condition_modalities". Permet de réduire à 1 le poids de certains indicateurs en fonction des valeurs d'autres variables (voir détails).

thresholds

list de vecteurs numériques. Seuils appliqués aux différents tests afin de classer en modalités Good, Uncertain, Bad et Severe. Par défault, la valeur de l'option "jdc_threshold" est utilisée. Vous pouvez appeler la fonction get_thresholds pour voir à quoi doit ressemble l'objet thresholds.

...

Autres paramètres non utilisés.

Details

La fonction compute_score permet de calculer un score à partir des modalités d'un bilan qualité. Pour cela, chaque modalité est associée à un poids défini par le paramètre modalities. Ainsi, le paramètre par défaut étant c("Good", "Uncertain", "Bad","Severe"), la valeur "Good" sera associée à la note 0, la valeur "Uncertain" sera associée à la note 1, la valeur "Bad" sera associée à la note 2 et la valeur "Bad" sera associée à la note 3. Le calcul du score se fait grâce au paramètre score_pond, qui est un vecteur numérique nommé contenant des poids et dont les noms correspondent aux variables de la matrice des modalités à utiliser dans le score. Ainsi, avec le paramètre score_pond = c(qs_residual_sa_on_sa = 10, f_residual_td_on_sa = 5) le score sera calculé à partir des deux variables qs_residual_sa_on_sa et f_residual_td_on_sa. Les notes associées aux modalités de la variable qs_residual_sa_on_sa seront multipliées par 10 et celles associées à la variable f_residual_td_on_sa seront multipliées par 5. Dans le calcul du score, certaines variables peuvent être manquantes: pour ne pas prendre en compte ces valeurs dans le calcul, il suffit d'utiliser le paramètre na.rm = TRUE. Le paramètre normalize_score_value permet de normaliser les scores. Par exemple, si l'on souhaite avoir des notes entre 0 et 20, il suffit d'utiliser le paramètre normalize_score_value = 20. Le paramètre n_contrib_score permet d'ajouter de nouvelles variables à la matrice des valeurs du bilan qualité dont les valeurs correspondent aux noms des variables qui contribuent le plus au score de la série. n_contrib_score est un entier égal au nombre de variables contributrices que l'on souhaite exporter. Par exemple, pour n_contrib_score = 3, trois colonnes seront créées et elles contiendront les trois plus grandes contributrices au score. Les noms des nouvelles variables sont i_highest_score, i correspondant au rang en terme de contribution au score (1_highest_score contiendra les noms des plus grandes contributrices, 2_highest_score des deuxièmes plus grandes contributrices, etc). Seules les variables qui ont une contribution non nulle au score sont prises en compte. Ainsi, si une série a un score nul, toutes les colonnes i_highest_score associées à cette série seront vides. Et si une série a un score positif uniquement du fait de la variable "m7", alors la valeur correspondante à la variable 1_highest_score sera égale à "m7" et celle des autres variables i_highest_score seront vides. Certains indicateurs peuvent n'avoir de sens que sous certaines conditions. Par exemple, le test d'homoscédasticité n'est valide que si les résidus sont indépendants et les tests de normalité, que si les résidus sont indépendants et homoscédastiques. Le paramètre conditional_indicator permet de prendre cela en compte en réduisant, sous certaines conditions, à 1 le poids de certains variables. C'est une list contenant des listes ayant 3 éléments :

Value

Un objet de type QR_matrix ou mQR_matrix.

Examples

# Chemin menant au fichier demetra_m.csv
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extraire le bilan qualité à partir du fichier demetra_m.csv
QR <- extract_QR(demetra_path)

# Compute the score
QR <- compute_score(QR, n_contrib_score = 2)
print(QR)

# Extraire les modalités de la matrice
QR[["modalities"]][["score"]]


Export des objets QR_matrix dans un fichier Excel

Description

Permet d'exporter un bilan qualité dans un fichier Excel.

Arguments

x

objet de type QR_matrix.

file

un objet de type character contenant le chemin menant au fichier que l'on veut créer

auto_format

booléen indiquant s'il faut formatter la sortie (auto_format = TRUE par défaut).

overwrite

booléen indiquant s'il faut ré-écrire créer le fichier Excel s'il existe déjà (create = TRUE par défaut)

...

autres argument non utilisés

Value

Renvoie de manière invisible (via invisible(x)) un objet de classeur créé par XLConnect::loadWorkbook() pour une manipulation ultérieure.


Export des objets mQR_matrix dans des fichiers Excel

Description

Permet d'exporter dans des fichiers Excel une liste de bilan qualité

Arguments

x

objet de type mQR_matrix à exporter.

export_dir

dossier d'export des résultats.

layout_file

paramètre d'export. Par défaut, (layout_file = "ByComponent") et un fichier Excel est exporté par composante de la matrice bilan qualité (matrice des modalités ou des valeurs), dont chaque feuille correspond à un bilan qualité. Pour avoir un fichier par bilan qualité dont chaque feuille correspond à la composante exportée, utiliser layout_file = "ByQRMatrix". La modalité layout_file = "AllTogether" correspond à la création d'un fichier avec 2 feuilles par bilan qualité (Values et Modalities).

auto_format

booléen indiquant s'il faut formatter la sortie (auto_format = TRUE par défaut).

overwrite

booléen indiquant s'il faut ré-écrire créer le fichier Excel s'il existe déjà (create = TRUE par défaut)

...

autres argument non utilisés

Value

Renvoie de manière invisible (via invisible(x)) le même objet mQR_matrix que x.


Extraction d'un bilan qualité

Description

Permet d'extraire un bilan qualité à partir du fichier CSV contenant la matrice des diagnostics.

Arguments

matrix_output_file

Chaîne de caracère. Chemin vers le fichier CSV contenant la matrice des diagnostics.

file

Chaîne de caracère. Chemin vers le fichier CSV contenant la matrice des diagnostics. Cet argument remplace l'argument matrix_output_file.

sep

séparateur de caractères utilisé dans le fichier csv (par défaut sep = ";")

dec

séparateur décimal utilisé dans le fichier csv (par défaut dec = ",")

thresholds

list de vecteurs numériques. Seuils appliqués aux différents tests afin de classer en modalités Good, Uncertain, Bad et Severe. Par défault, la valeur de l'option "jdc_threshold" est utilisée. Vous pouvez appeler la fonction get_thresholds pour voir à quoi doit ressemble l'objet thresholds.

Details

La fonction permet d'extraire un bilan qualité à partir d'un fichier csv contenant l'ensemble des diagnostics (généralement fichier demetra_m.csv).

Ce fichier peut être obtenu en lançant le cruncher (cruncher ou cruncher_and_param) avec l'ensemble des paramètres de base pour les paramètres à exporter et l'option csv_layout = "vtable" (par défaut) pour le format de sortie des fichiers csv (option de cruncher_and_param ou de create_param_file lors de la création du fichier de paramètres).

Le résultat de cette fonction est un objet QR_matrix qui est une liste de trois paramètres :

Si x est fourni, les arguments fichier et matrix_output_file sont ignorés. L'argument fichier désigne également le chemin vers le fichier qui contient la matrice de diagnostic (qui peut être importée en parallèle dans R et utilisée avec l'argument x).

Value

Un objet de type QR_matrix.

Examples

# Chemin menant au fichier demetra_m.csv
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extraire le bilan qualité à partir du fichier demetra_m.csv
QR <- extract_QR(file = demetra_path)

print(QR)

# Extraire les modalités de la matrice
QR[["modalities"]]
# Or:
QR[["modalities"]]


Extraction du score

Description

Permet d'extraire le score des objets QR_matrix ou mQR_matrix.

Arguments

x

objet de type QR_matrix ou mQR_matrix.

format_output

chaîne de caractères indiquant le format de l'objet en sortie : soit un data.frame soit un vector.

weighted_score

booléen indiquant s'il faut extraire le score pondéré (s'il existe) ou le score non pondéré. Par défaut, c'est le score non pondéré qui est extrait.

Details

Pour les objets QR_matrix, le score renvoyé est soit l'objet NULL si aucun score n'a été calculé, soit un vecteur. Pour les objets mQR_matrix, c'est une liste de scores (NULL ou un vecteur).

Value

extract_score() renvoie un data.frame avec deux colonnes : le nom de la série et son score.

Examples


# Chemin menant au fichier demetra_m.csv
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extraire le bilan qualité à partir du fichier demetra_m.csv
QR <- extract_QR(demetra_path)

# Calculer le score
QR1 <- compute_score(x = QR, n_contrib_score = 5)
QR2 <- compute_score(
    x = QR,
    score_pond = c(qs_residual_sa_on_sa = 5, qs_residual_sa_on_i = 30,
                   f_residual_td_on_sa = 10, f_residual_td_on_i = 40,
                   oos_mean = 30, residuals_skewness = 15, m7 = 25)
)
mQR <- mQR_matrix(list(a = QR1, b = QR2))

# Extraire les scores
extract_score(QR1)
extract_score(mQR)


Affichage des objets QR_matrix et mQR_matrix

Description

Pour afficher un objet QR_matrix ou mQR_matrix.

Arguments

x

objet de type mQR_matrix ou mQR_matrix.

print_variables

booléen pour imprimer ou non les noms des indicateurs (supplémentaire inclus).

print_score_formula

booléen pour imprimer ou non la formule qui a servi à calculer le score (le cas échéant).

score_statistics

booléen pour imprimer ou non des statistiques sur les scores de la mQR_matrix (le cas échéant).

...

autres arguments non utilisés.

Value

la méthode print imprime un objet mQR_matrix ou mQR_matrix et le renvoie de manière invisible (via invisible(x)).


Combiner par ligne des objets QR_matrix

Description

Permet de combiner plusieurs objets QR_matrix en combinant par ligne les paramètres modalities et values.

Arguments

...

objets QR_matrix à combiner.

check_formula

booléen indiquant s'il faut vérifier la cohérence dans les formules de calcul du score. Par défaut, check_formula = TRUE : la fonction renvoie une erreur si des scores sont calculés avec des formules différentes. Si check_formula = FALSE, alors il n'y a pas de vérification et le paramètre score_formula de l'objet en sortie est NULL.

Value

rbind.QR_matrix() renvoie un objet QR_matrix.

Examples

# Chemin menant au fichier demetra_m.csv
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extraire le bilan qualité à partir du fichier demetra_m.csv
QR <- extract_QR(demetra_path)

# Calculer differents scores
QR1 <- compute_score(QR, score_pond = c(m7 = 2, q = 3, qs_residual_sa_on_sa = 5))
QR2 <- compute_score(QR, score_pond = c(m7 = 2, qs_residual_sa_on_sa = 5))

# Fusionner 2 bilans qualité
try(rbind(QR1, QR2)) # Une erreur est renvoyée
rbind(QR1, QR2, check_formula = FALSE)


Ré-encodage en modalités des variables

Description

Permet d'encoder des variables présentes dans la matrice des valeurs en modalités ajoutables à la matrice des modalités.

Arguments

x

objet de type QR_matrix ou mQR_matrix.

variable_name

vecteur de chaînes de caractères contenant les noms des variables à recoder.

breaks

voir l'argument éponyme de la fonction cut.

labels

voir l'argument éponyme de la fonction cut.

...

autres paramètres de la fonction cut.

Value

La fonction recode_indicator_num() renvoie le même objet, enrichi de l'indicateur choisi. Ainsi, si l'entrée x est une matrice QR_matrix, un objet de classe QR_matrix est renvoyé. Si le code d'entrée x est une matrice mQR, un objet de la classe mQR_matrix est renvoyé.


Manipulation de la liste des indicateurs

Description

Permet de retirer des indicateurs (fonction remove_indicators()) ou de n'en retenir que certains (fonction retain_indicators()) d'objets QR_matrix ou mQR_matrix. Le nom des séries (colonne "series") ne peut être enlevé.

Arguments

x

objet de type QR_matrix ou mQR_matrix.

...

noms des variables à retirer (ou conserver).

Value

remove_indicators() renvoie le même objet x réduit par les drapeaux et les variables utilisés comme arguments ... Donc si l'entrée x est une matrice QR_matrix, un objet de la classe QR_matrix est renvoyé. Si le code d'entrée x est une matrice mQR, un objet de la classe mQR_matrix est renvoyé.

Examples


# Chemin menant au fichier demetra_m.csv
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extraire le bilan qualité à partir du fichier demetra_m.csv
QR <- extract_QR(demetra_path)

# Calculer le score
QR <- compute_score(x = QR, n_contrib_score = 5)

# Retenir certains indicateurs
retain_indicators(QR, "score", "m7") # Retiens les indicateurs "score" et "m7"
retain_indicators(QR, c("score", "m7")) # Pareil

# Retirer des indicateurs
QR <- remove_indicators(QR, "score") # removing "score"

extract_score(QR) # est NULL car l'indicateur "score a été retiré


Tri des objets QR_matrix et mQR_matrix

Description

Permet de trier les bilans qualité en fonction d'une ou plusieurs variables.

Arguments

x

objet de type QR_matrix ou mQR_matrix.

decreasing

booléen indiquant si les bilans qualité doivent être triés par ordre croissant ou décroissant. Par défaut, le tri est effectué par ordre croissant.

sort_variables

variables à utiliser pour le tri. Elles doivent être présentes dans les tables de modalités.

...

autres paramètres de la fonction order (non utilisés pour l'instant).

Value

L'objet en entrée avec les tables de bilan qualité triées.

Examples


# Chemin menant au fichier demetra_m.csv
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extraire le bilan qualité à partir du fichier demetra_m.csv
QR <- extract_QR(demetra_path)

# Calculer le score
QR <- compute_score(QR, n_contrib_score = 2)
print(QR[["modalities"]][["score"]])

# Trier les scores

# Pour trier par ordre croissant sur le score
QR <- sort(QR, sort_variables = "score")
print(QR[["modalities"]][["score"]])


Calcul d'un score pondéré pour chaque observation

Description

Permet de pondérer un score déjà calculé en fonction de variables.

Arguments

x

objet de type QR_matrix ou mQR_matrix.

pond

pondération à appliquer au score. Il peut s'agir d'un nombre, d'un vecteur de nombres, du nom d'une des variables du bilan qualité ou d'une liste de pondérations pour les objets mQR_matrix.

Value

L'objet en entrée avec le score recalculé

Examples


# Chemin menant au fichier demetra_m.csv
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extraire le bilan qualité à partir du fichier demetra_m.csv
QR <- extract_QR(demetra_path)

# Calculer le score
QR <- compute_score(QR, n_contrib_score = 2)
print(QR)

# Pondérer le score
QR <- weighted_score(QR, 2)
print(QR)

# Extraire le score pondéré
QR[["modalities"]][["score_pond"]]


Get all (default) thresholds

Description

Get all (default) thresholds

Usage

get_thresholds(test_name, default = TRUE)

Arguments

test_name

String. The name of the test to get.

default

Boolean. (default is TRUE) If TRUE, the default threshold will be returned. If FALSE the current used thresholds.

Details

If test_name is missing, all threshold will be returned.

Examples


# Get all default thresholds
get_thresholds(default = TRUE)

# Get all current thresholds
get_thresholds(default = FALSE)

# Get all current thresholds
get_thresholds(test_name = "oos_mean", default = FALSE)


Printing QR_matrix and mQR_matrix objects

Description

To print information on a QR_matrix or mQR_matrix object.

Usage

## S3 method for class 'QR_matrix'
print(x, print_variables = TRUE, print_score_formula = TRUE, ...)

## S3 method for class 'mQR_matrix'
print(x, score_statistics = TRUE, ...)

Arguments

x

a mQR_matrix or mQR_matrix object.

print_variables

logical indicating whether to print the indicators' name (including additionnal variables).

print_score_formula

logical indicating whether to print the formula with which the score was calculated (when calculated).

...

other unused arguments.

score_statistics

logical indicating whether to print the statistics in the mQR_matrix scores (when calculated).

Value

the print method prints a mQR_matrix or mQR_matrix object and returns it invisibly (via invisible(x)).

See Also

Traduction française


Combining QR_matrix objects

Description

Function to combine multiple QR_matrix objects: line by line, both for the modalities and the values table.

Usage

## S3 method for class 'QR_matrix'
rbind(..., check_formula = TRUE)

Arguments

...

QR_matrix objects to combine.

check_formula

logical indicating whether to check the score formulas' coherency. By default, check_formula = TRUE: an error is returned if the scores were calculated with different formulas. If check_formula = FALSE, no check is performed and the score_formula of the output is NULL.

Value

rbind.QR_matrix() returns a QR_matrix object.

See Also

Traduction française

Other QR_matrix functions: export_xlsx(), export_xlsx.QR_matrix(), export_xlsx.mQR_matrix(), extract_QR(), sort(), weighted_score()

Examples

# Path of matrix demetra_m
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extract the quality report from the demetra_m file
QR <- extract_QR(demetra_path)

# Compute differents scores
QR1 <- compute_score(QR, score_pond = c(m7 = 2, q = 3, qs_residual_sa_on_sa = 5))
QR2 <- compute_score(QR, score_pond = c(m7 = 2, qs_residual_sa_on_sa = 5))

# Merge two quality report
try(rbind(QR1, QR2)) # Une erreur est renvoyée
rbind(QR1, QR2, check_formula = FALSE)


Converting "values variables" into "modalities variables"

Description

To transform variables from the values matrix into categorical variables that can be added into the modalities matrix.

Usage

recode_indicator_num(
  x,
  variable_name,
  breaks = c(0, 0.01, 0.05, 0.1, 1),
  labels = c("Good", "Uncertain", "Bad", "Severe"),
  ...
)

Arguments

x

a QR_matrix or mQR_matrix object.

variable_name

a vector of strings containing the names of the variables to convert.

breaks

see function cut.

labels

see function cut.

...

other parameters of the cut function.

Value

The function recode_indicator_num() returns the same object, enhanced with the chosen indicator. So if the input x is a QR_matrix, an object of class QR_matrix is returned. If the input x is a mQR_matrix, an object of class mQR_matrix is returned.

See Also

Traduction française

Other var QR_matrix manipulation: QR_var_manipulation, add_indicator()


Set values for thresholds

Description

Set values for thresholds

Usage

set_thresholds(test_name, thresholds)

Arguments

test_name

String. The name of the test to update.

thresholds

Named vector of numerics. The upper values of each break of a threshold.

Details

If test_name is missing, the argument thresholds is not used and all thresholds will be updated to their default values.

If test_name is not missing, but if the argument thresholds is missing then only the thresholds of the test test_name will be updated to its default values.

Finally, if test_name and thresholds are not missing, then only the thresholds of the test test_name are updated with the value thresholds.

Examples


# Set "m7"
set_thresholds(
    test_name = "m7",
    thresholds = c(Good = 0.8, Bad = 1.4, Severe = Inf)
)

# Set "oos_mean" to default
set_thresholds(test_name = "oos_mean")

# Set all thresholds to default
set_thresholds()


QR_matrix and mQR_matrix sorting

Description

To sort the quality reports on one or several variables

Usage

## S3 method for class 'QR_matrix'
sort(x, decreasing = FALSE, sort_variables = "score", ...)

## S3 method for class 'mQR_matrix'
sort(x, decreasing = FALSE, sort_variables = "score", ...)

Arguments

x

a QR_matrix or mQR_matrix object

decreasing

logical indicating whether the quality reports must be sorted in ascending or decreasing order. By default, the sorting is done in ascending order.

sort_variables

They must be present in the modalities table.

...

other parameters of the function order (unused for now)

Value

the input with sorted quality reports

See Also

Traduction française

Other QR_matrix functions: export_xlsx(), export_xlsx.QR_matrix(), export_xlsx.mQR_matrix(), extract_QR(), rbind.QR_matrix(), weighted_score()

Examples

# Path of matrix demetra_m
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extract the quality report from the demetra_m file
QR <- extract_QR(demetra_path)

# Compute the score
QR <- compute_score(QR, n_contrib_score = 2)
print(QR[["modalities"]][["score"]])

# Sort the scores

# To sort by ascending scores
QR <- sort(QR, sort_variables = "score")
print(QR[["modalities"]][["score"]])


Weighted score calculation

Description

Function to weight a pre-calculated score

Usage

weighted_score(x, pond = 1L)

Arguments

x

a QR_matrix or mQR_matrix object

pond

the weights to use. Can be an integer, a vector of integers, the name of one of the quality report variables or a list of weights for the mQR_matrix objects.

Value

the input with an additionnal weighted score

See Also

Traduction française

Other QR_matrix functions: export_xlsx(), export_xlsx.QR_matrix(), export_xlsx.mQR_matrix(), extract_QR(), rbind.QR_matrix(), sort()

Examples

# Path of matrix demetra_m
demetra_path <- file.path(
    system.file("extdata", package = "JDCruncheR"),
    "WS/ws_ipi/Output/SAProcessing-1",
    "demetra_m.csv"
)

# Extract the quality report from the demetra_m file
QR <- extract_QR(demetra_path)

# Compute the score
QR <- compute_score(QR, n_contrib_score = 2)

# Weighted score
QR <- weighted_score(QR, 2)
print(QR)

# Extract the weighted score
QR[["modalities"]][["score_pond"]]