Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
rebuild_vignette_results <- identical(
tolower(Sys.getenv("REVISER_REBUILD_VIGNETTE_RESULTS")),
"true"
)
vignette_result_path <- function(name) {
candidates <- c(
file.path("vignettes", "precomputed", name),
file.path("precomputed", name)
)
existing <- candidates[file.exists(candidates)]
if (length(existing) > 0) {
existing[[1]]
} else {
candidates[[1]]
}
}
load_or_build_vignette_result <- function(name, builder) {
path <- vignette_result_path(name)
if (!rebuild_vignette_results) {
if (!file.exists(path)) {
stop("Missing precomputed vignette result: ", basename(path))
}
return(readRDS(path))
}
result <- builder()
dir.create(dirname(path), recursive = TRUE, showWarnings = FALSE)
saveRDS(result, path)
result
}
## ----warning = FALSE, message = FALSE-----------------------------------------
library(reviser)
library(dplyr)
library(tidyr)
library(tsbox)
gdp <- reviser::gdp |>
tsbox::ts_pc() |>
dplyr::filter(
id == "EA",
time >= min(pub_date),
time <= as.Date("2020-01-01")
) |>
tidyr::drop_na()
df <- get_nth_release(gdp, n = 0:14)
final_release <- get_nth_release(gdp, n = 15)
efficient_release <- load_or_build_vignette_result(
"nowcasting-revisions-kk-efficient-release.rds",
function() get_first_efficient_release(df, final_release)
)
summary(efficient_release)
data_kk <- efficient_release$data
e <- efficient_release$e
## ----warning = FALSE, message = FALSE-----------------------------------------
fit_kk <- load_or_build_vignette_result(
"nowcasting-revisions-kk-fit.rds",
function() {
kk_nowcast(
df = data_kk,
e = e,
model = "KK",
method = "MLE",
solver_options = list(
method = "L-BFGS-B",
maxiter = 100,
se_method = "hessian"
)
)
}
)
summary(fit_kk)
## ----warning = FALSE, message = FALSE-----------------------------------------
coef(fit_kk)
## ----warning = FALSE, message = FALSE-----------------------------------------
logLik(fit_kk)
AIC(fit_kk)
BIC(fit_kk)
nobs(fit_kk)
## ----warning = FALSE, message = FALSE-----------------------------------------
states(fit_kk, filter = "smoothed") |>
dplyr::slice_tail(n = 8)
## ----warning = FALSE, message = FALSE-----------------------------------------
plot(fit_kk)
## ----eval = FALSE-------------------------------------------------------------
# fit_howrey <- kk_nowcast(
# df = data_kk,
# e = e,
# model = "Howrey",
# method = "MLE"
# )
#
# fit_classical <- kk_nowcast(
# df = data_kk,
# e = e,
# model = "Classical",
# method = "MLE"
# )
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.