R/ud_var.R

Defines functions userdefined_variables_tramoseats .add_ud_var

Documented in userdefined_variables_tramoseats

.add_ud_var <- function(x, jx, userdefined = NULL, out_class = NULL, result = FALSE) {
    if (is.null(userdefined)) {
        x$user_defined <- rjd3toolkit::user_defined(x, NULL)
    } else {
        if (result) {
            res <- jx
        } else {
            if (is.null(out_class)) {
                res <- jx$getResult()
            } else {
                res <- .jcall(jx, out_class, "getResult")
            }
        }
        res <- rjd3toolkit::.jd3_object(res, result = TRUE)
        x$user_defined <- rjd3toolkit::user_defined(res, userdefined = userdefined)
    }
    x
}



#' Display list of all available output objects (series, parameters, diagnostics)
#'
#' @description
#' Function generating a comprehensive list of available output variables from the estimation process
#' by the  `tramo()` and `tramoseats()` functions.
#' Some items are available in the default estimation output but the remainder can be added
#' using the `userdefined` parameter.
#' User-defined objects can the be retrieved from the list of lists generated by the estimation process
#'
#' @param x a character to indicate the estimation function for which the output items list will be displayed.
#'
#' @examples
#' userdefined_variables_tramoseats("tramoseats")
#' userdefined_variables_tramoseats("tramo")
#' y <- rjd3toolkit::ABS$X0.2.09.10.M
#' m <- tramoseats(y, "rsafull", userdefined = c("ycal", "variancedecomposition.seasonality"))
#' m$user_defined$ycal
#' m$user_defined$variancedecomposition.seasonality
#'
#' @return  a vector containing the names of all the available output objects (series, diagnostics, parameters)
#' @references
#' More information and examples related to 'JDemetra+' features in the online documentation:
#' \url{https://jdemetra-new-documentation.netlify.app/}
#' @export
userdefined_variables_tramoseats <- function(x = c("TRAMO-SEATS", "TRAMO")) {
    x <- match.arg(gsub("-", "", tolower(x)),
        choices = c("tramoseats", "tramo")
    )

    # library("rjd3tramoseats")
    # jts<-rjd3toolkit::.r2jd_ts(rjd3toolkit::ABS$X0.2.09.10.M)
    # jrslt<- rJava::.jcall("jdplus/tramoseats/base/r/TramoSeats", "Ljdplus/tramoseats/base/core/tramoseats/TramoSeatsOutput;", "fullProcess", jts, "rsafull")
    # rjd3toolkit::dictionary(rjd3toolkit::.jd3_object(jrslt$getResult(), result = TRUE)) |>
    #   sort() |>
    #   dput()

    sa_tramoseats <- c(
        "adjust", "arima.bd", "arima.bp", "arima.bphi(*)", "arima.bq",
        "arima.btheta(*)", "arima.d", "arima.p", "arima.phi(*)", "arima.q",
        "arima.theta(*)", "benchmarking.original", "benchmarking.result",
        "benchmarking.target", "cal", "cal_b", "cal_b(?)", "cal_f", "cal_f(?)",
        "decomposition.finalmodel.ac", "decomposition.finalmodel.bd",
        "decomposition.finalmodel.bp", "decomposition.finalmodel.bphi(*)",
        "decomposition.finalmodel.bq", "decomposition.finalmodel.btheta(*)",
        "decomposition.finalmodel.d", "decomposition.finalmodel.p", "decomposition.finalmodel.phi(*)",
        "decomposition.finalmodel.q", "decomposition.finalmodel.spectrum",
        "decomposition.finalmodel.theta(*)", "decomposition.i_cmp", "decomposition.i_cmp_b",
        "decomposition.i_cmp_eb", "decomposition.i_cmp_ef", "decomposition.i_cmp_f",
        "decomposition.i_lin", "decomposition.i_lin_b", "decomposition.i_lin_e",
        "decomposition.i_lin_eb", "decomposition.i_lin_ef", "decomposition.i_lin_f",
        "decomposition.initialmodel.ac", "decomposition.initialmodel.bd",
        "decomposition.initialmodel.bp", "decomposition.initialmodel.bphi(*)",
        "decomposition.initialmodel.bq", "decomposition.initialmodel.btheta(*)",
        "decomposition.initialmodel.d", "decomposition.initialmodel.p",
        "decomposition.initialmodel.phi(*)", "decomposition.initialmodel.q",
        "decomposition.initialmodel.spectrum", "decomposition.initialmodel.theta(*)",
        "decomposition.s_cmp", "decomposition.s_cmp_b", "decomposition.s_cmp_eb",
        "decomposition.s_cmp_ef", "decomposition.s_cmp_f", "decomposition.s_lin",
        "decomposition.s_lin_b", "decomposition.s_lin_e", "decomposition.s_lin_eb",
        "decomposition.s_lin_ef", "decomposition.s_lin_f", "decomposition.sa_cmp",
        "decomposition.sa_cmp_b", "decomposition.sa_cmp_eb", "decomposition.sa_cmp_ef",
        "decomposition.sa_cmp_f", "decomposition.sa_lin", "decomposition.sa_lin_b",
        "decomposition.sa_lin_e", "decomposition.sa_lin_eb", "decomposition.sa_lin_ef",
        "decomposition.sa_lin_f", "decomposition.t_cmp", "decomposition.t_cmp_b",
        "decomposition.t_cmp_eb", "decomposition.t_cmp_ef", "decomposition.t_cmp_f",
        "decomposition.t_lin", "decomposition.t_lin_b", "decomposition.t_lin_e",
        "decomposition.t_lin_eb", "decomposition.t_lin_ef", "decomposition.t_lin_f",
        "decomposition.y_cmp", "decomposition.y_cmp_b", "decomposition.y_cmp_eb",
        "decomposition.y_cmp_ef", "decomposition.y_cmp_f", "decomposition.y_lin",
        "decomposition.y_lin_b", "decomposition.y_lin_eb", "decomposition.y_lin_ef",
        "decomposition.y_lin_f", "det", "det_b(?)", "det_f(?)", "det_i",
        "det_i_b(?)", "det_i_f(?)", "det_s", "det_s_b(?)", "det_s_f(?)",
        "det_t", "det_t_b(?)", "det_t_f(?)", "diagnostics.fcast-insample-mean",
        "diagnostics.fcast-outsample-mean", "diagnostics.fcast-outsample-variance",
        "diagnostics.seas-i-combined", "diagnostics.seas-i-combined3",
        "diagnostics.seas-i-evolutive", "diagnostics.seas-i-f", "diagnostics.seas-i-friedman",
        "diagnostics.seas-i-kw", "diagnostics.seas-i-periodogram", "diagnostics.seas-i-qs",
        "diagnostics.seas-i-spectralpeaks", "diagnostics.seas-i-stable",
        "diagnostics.seas-lin-combined", "diagnostics.seas-lin-evolutive",
        "diagnostics.seas-lin-f", "diagnostics.seas-lin-friedman", "diagnostics.seas-lin-kw",
        "diagnostics.seas-lin-periodogram", "diagnostics.seas-lin-qs",
        "diagnostics.seas-lin-spectralpeaks", "diagnostics.seas-lin-stable",
        "diagnostics.seas-res-combined", "diagnostics.seas-res-combined3",
        "diagnostics.seas-res-evolutive", "diagnostics.seas-res-f", "diagnostics.seas-res-friedman",
        "diagnostics.seas-res-kw", "diagnostics.seas-res-periodogram",
        "diagnostics.seas-res-qs", "diagnostics.seas-res-spectralpeaks",
        "diagnostics.seas-res-stable", "diagnostics.seas-sa-ac1", "diagnostics.seas-sa-combined",
        "diagnostics.seas-sa-combined3", "diagnostics.seas-sa-evolutive",
        "diagnostics.seas-sa-f", "diagnostics.seas-sa-friedman", "diagnostics.seas-sa-kw",
        "diagnostics.seas-sa-periodogram", "diagnostics.seas-sa-qs",
        "diagnostics.seas-sa-spectralpeaks", "diagnostics.seas-sa-stable",
        "diagnostics.seas-si-combined", "diagnostics.seas-si-combined3",
        "diagnostics.seas-si-evolutive", "diagnostics.seas-si-stable",
        "diagnostics.td-i-all", "diagnostics.td-i-last", "diagnostics.td-res-all",
        "diagnostics.td-res-last", "diagnostics.td-sa-all", "diagnostics.td-sa-last",
        "ee", "ee_b(?)", "ee_f(?)", "i", "i_b", "i_eb", "i_ef", "i_f",
        "l", "likelihood.adjustedll", "likelihood.aic", "likelihood.aicc",
        "likelihood.bic", "likelihood.bic2", "likelihood.bicc", "likelihood.df",
        "likelihood.hannanquinn", "likelihood.ll", "likelihood.neffectiveobs",
        "likelihood.nobs", "likelihood.nparams", "likelihood.ssqerr",
        "log", "mhe", "mhe_b(?)", "mhe_f(?)", "mode", "omhe", "omhe_b(?)",
        "omhe_f(?)", "out", "out_b(?)", "out_f(?)", "out_i", "out_i_b(?)",
        "out_i_f(?)", "out_s", "out_s_b(?)", "out_s_f(?)", "out_t", "out_t_b(?)",
        "out_t_f(?)", "period", "reg_i", "reg_i_b(?)", "reg_i_f(?)",
        "reg_s", "reg_s_b(?)", "reg_s_f(?)", "reg_sa", "reg_sa_b(?)",
        "reg_sa_f(?)", "reg_t", "reg_t_b(?)", "reg_t_f(?)", "reg_u",
        "reg_u_b(?)", "reg_u_f(?)", "reg_y", "reg_y_b(?)", "reg_y_f(?)",
        "regression.description", "regression.details.coefficients",
        "regression.details.covar", "regression.details.covar-ml", "regression.easter",
        "regression.espan.end", "regression.espan.missing", "regression.espan.n",
        "regression.espan.start", "regression.leaster", "regression.lp",
        "regression.mean", "regression.missing(*)", "regression.ml.parameters",
        "regression.ml.pcorr", "regression.ml.pcovar", "regression.ml.pcovar-ml",
        "regression.ml.pscore", "regression.mu", "regression.nao", "regression.nlp",
        "regression.nls", "regression.nmh", "regression.nout", "regression.nso",
        "regression.ntc", "regression.ntd", "regression.nusers", "regression.out(*)",
        "regression.outlier(*)", "regression.td(*)", "regression.type",
        "regression.user(*)", "residuals.bp", "residuals.bp2", "residuals.doornikhansen",
        "residuals.kurtosis", "residuals.lb", "residuals.lb2", "residuals.lruns",
        "residuals.ludruns", "residuals.mean", "residuals.nruns", "residuals.nudruns",
        "residuals.res", "residuals.seasbp", "residuals.seaslb", "residuals.ser",
        "residuals.skewness", "residuals.tsres", "residuals.type", "s",
        "s_b", "s_eb", "s_ef", "s_f", "sa", "sa_b", "sa_eb", "sa_ef",
        "sa_f", "seasonal", "seats.ar_root(*)", "seats.ivar-estimate",
        "seats.ivar-estimator", "seats.ivar-pvalue", "seats.ma_root(*)",
        "seats.model_changed", "seats.parameters_cutoff", "seats.savar-estimate",
        "seats.savar-estimator", "seats.savar-pvalue", "seats.seasonality",
        "seats.sicorr-estimate", "seats.sicorr-estimator", "seats.sicorr-pvalue",
        "seats.svar-estimate", "seats.svar-estimator", "seats.svar-pvalue",
        "seats.ticorr-estimate", "seats.ticorr-estimator", "seats.ticorr-pvalue",
        "seats.tscorr-estimate", "seats.tscorr-estimator", "seats.tscorr-pvalue",
        "seats.tvar-estimate", "seats.tvar-estimator", "seats.tvar-pvalue",
        "span.end", "span.missing", "span.n", "span.start", "t", "t_b",
        "t_eb", "t_ef", "t_f", "tde", "tde_b(?)", "tde_f(?)", "variancedecomposition.cycle",
        "variancedecomposition.irregular", "variancedecomposition.others",
        "variancedecomposition.seasonality", "variancedecomposition.tdh",
        "variancedecomposition.total", "y", "y_b", "y_b(?)", "y_eb(?)",
        "y_ef(?)", "y_f", "y_f(?)", "yc", "ycal", "ycal_f(?)"
    )

    # jts<-rjd3toolkit::.r2jd_ts(rjd3toolkit::ABS$X0.2.09.10.M)
    # jrslt<- rJava::.jcall("jdplus/tramoseats/base/r/Tramo", "Ljdplus/tramoseats/base/core/tramo/TramoOutput;", "fullProcess", jts, "trfull")
    # rjd3toolkit::dictionary(rjd3toolkit::.jd3_object(jrslt$getResult(), result = TRUE)) |>
    #   sort() |>
    #   dput()

    sa_tramo <- c(
        "adjust", "arima.bd", "arima.bp", "arima.bphi(*)", "arima.bq",
        "arima.btheta(*)", "arima.d", "arima.p", "arima.phi(*)", "arima.q",
        "arima.theta(*)", "cal", "cal_b(?)", "cal_f(?)", "det", "det_b(?)",
        "det_f(?)", "det_i", "det_i_b(?)", "det_i_f(?)", "det_s", "det_s_b(?)",
        "det_s_f(?)", "det_t", "det_t_b(?)", "det_t_f(?)", "ee", "ee_b(?)",
        "ee_f(?)", "l", "likelihood.adjustedll", "likelihood.aic", "likelihood.aicc",
        "likelihood.bic", "likelihood.bic2", "likelihood.bicc", "likelihood.df",
        "likelihood.hannanquinn", "likelihood.ll", "likelihood.neffectiveobs",
        "likelihood.nobs", "likelihood.nparams", "likelihood.ssqerr",
        "log", "mhe", "mhe_b(?)", "mhe_f(?)", "omhe", "omhe_b(?)", "omhe_f(?)",
        "out", "out_b(?)", "out_f(?)", "out_i", "out_i_b(?)", "out_i_f(?)",
        "out_s", "out_s_b(?)", "out_s_f(?)", "out_t", "out_t_b(?)", "out_t_f(?)",
        "period", "reg_i", "reg_i_b(?)", "reg_i_f(?)", "reg_s", "reg_s_b(?)",
        "reg_s_f(?)", "reg_sa", "reg_sa_b(?)", "reg_sa_f(?)", "reg_t",
        "reg_t_b(?)", "reg_t_f(?)", "reg_u", "reg_u_b(?)", "reg_u_f(?)",
        "reg_y", "reg_y_b(?)", "reg_y_f(?)", "regression.description",
        "regression.details.coefficients", "regression.details.covar",
        "regression.details.covar-ml", "regression.easter", "regression.espan.end",
        "regression.espan.missing", "regression.espan.n", "regression.espan.start",
        "regression.leaster", "regression.lp", "regression.mean", "regression.missing(*)",
        "regression.ml.parameters", "regression.ml.pcorr", "regression.ml.pcovar",
        "regression.ml.pcovar-ml", "regression.ml.pscore", "regression.mu",
        "regression.nao", "regression.nlp", "regression.nls", "regression.nmh",
        "regression.nout", "regression.nso", "regression.ntc", "regression.ntd",
        "regression.nusers", "regression.out(*)", "regression.outlier(*)",
        "regression.td(*)", "regression.type", "regression.user(*)",
        "residuals.bp", "residuals.bp2", "residuals.doornikhansen", "residuals.kurtosis",
        "residuals.lb", "residuals.lb2", "residuals.lruns", "residuals.ludruns",
        "residuals.mean", "residuals.nruns", "residuals.nudruns", "residuals.res",
        "residuals.seasbp", "residuals.seaslb", "residuals.ser", "residuals.skewness",
        "residuals.tsres", "residuals.type", "span.end", "span.missing",
        "span.n", "span.start", "tde", "tde_b(?)", "tde_f(?)", "y", "y_b(?)",
        "y_eb(?)", "y_ef(?)", "y_f(?)", "yc", "ycal", "ycal_f(?)"
    )
    switch(x,
        tramoseats = sa_tramoseats,
        tramo = sa_tramo
    )
}
palatej/rjd3tramoseats documentation built on April 17, 2025, 11:29 p.m.