Closed AQLT closed 7 months ago
library(RJDemetra) y_month <- ipi_c_eu[,"FR"] sa_m <- x13(y_month, userdefined = c("diagnostics.msr-global", sprintf("diagnostics.msr(%i)", 1:12))) c(sa_m$user_defined) #> $`diagnostics.msr-global` #> [1] 4.224309 #> #> $`diagnostics.msr(1)` #> [1] 6.918248 #> #> $`diagnostics.msr(2)` #> [1] 4.679206 #> #> $`diagnostics.msr(3)` #> [1] 4.351482 #> #> $`diagnostics.msr(4)` #> [1] 5.808313 #> #> $`diagnostics.msr(5)` #> [1] 4.446801 #> #> $`diagnostics.msr(6)` #> [1] 3.175827 #> #> $`diagnostics.msr(7)` #> [1] 5.102764 #> #> $`diagnostics.msr(8)` #> [1] 2.756466 #> #> $`diagnostics.msr(9)` #> [1] 4.216562 #> #> $`diagnostics.msr(10)` #> [1] 4.750469 #> #> $`diagnostics.msr(11)` #> [1] 5.088831 #> #> $`diagnostics.msr(12)` #> NULL
A workaround is to use the following code:
extract_msr <- function(x, i = 1:12){ jmodel <- suppressWarnings(jx13(get_ts(x), x13_spec(x))) jres <- jmodel$result@internal$getResults() jres <- new(Class = "X13_java", internal = jres) res <- sapply(i, function(i_){ RJDemetra:::result(jres, sprintf("msr(%i)", i_)) }) names(res) <- sprintf("msr(%i)", i) res } extract_msr(sa_m) #> msr(1) msr(2) msr(3) msr(4) msr(5) msr(6) msr(7) msr(8) #> 6.918248 4.679206 4.351482 5.808313 4.446801 3.175827 5.102764 2.756466 #> msr(9) msr(10) msr(11) msr(12) #> 4.216562 4.750469 5.088831 2.953120
There is no problem with quarterly or bi-annual time series:
y_qtr <- rjd3toolkit::aggregate(ipi_c_eu[,"FR"], nfreq = 4) sa_q <- x13(y_qtr, userdefined = c("diagnostics.msr-global", sprintf("diagnostics.msr(%i)", 1:4))) c(sa_q$user_defined) #> $`diagnostics.msr-global` #> [1] 3.550392 #> #> $`diagnostics.msr(1)` #> [1] 4.589953 #> #> $`diagnostics.msr(2)` #> [1] 3.69637 #> #> $`diagnostics.msr(3)` #> [1] 4.091684 #> #> $`diagnostics.msr(4)` #> [1] 2.381584 y_ba <- rjd3toolkit::aggregate(ipi_c_eu[,"FR"], nfreq = 2) sa_ba <- x13(y_ba, userdefined = c("diagnostics.msr-global", sprintf("diagnostics.msr(%i)", 1:2))) c(sa_ba$user_defined) #> $`diagnostics.msr-global` #> [1] 5.200167 #> #> $`diagnostics.msr(1)` #> [1] 5.268673 #> #> $`diagnostics.msr(2)` #> [1] 5.130636
A workaround is to use the following code:
There is no problem with quarterly or bi-annual time series: