Nothing
## ----include = FALSE----------------------------------------------------------
# With the root.dir option below,
# this vignette runs the R code in a temporary directory
# so new files are written to temporary storage
# and not the user's file space.
knitr::opts_knit$set(root.dir = fs::dir_create(tempfile()))
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
skip <- identical(Sys.getenv("NOT_CRAN", unset = "false"), "false") ||
!requireNamespace("rjags", quietly = TRUE) ||
!requireNamespace("R2jags", quietly = TRUE)
if (skip) {
knitr::opts_chunk$set(eval = FALSE)
} else {
library(R2jags)
}
library(dplyr)
library(targets)
library(jagstargets)
## -----------------------------------------------------------------------------
lines <- "model {
for (i in 1:n) {
y[i] ~ dnorm(x[i] * beta, 1)
}
beta ~ dnorm(0, 1)
}"
writeLines(lines, "x.jags")
## ----echo = FALSE-------------------------------------------------------------
# Writes the _targets.R file shown in the next code chunk.
library(targets)
tar_script({
library(jagstargets)
options(crayon.enabled = FALSE)
list(
tar_jags(
example,
jags_files = "x.jags",
parameters.to.save = "beta",
data = tar_jags_example_data(),
stdout = R.utils::nullfile(),
stderr = R.utils::nullfile()
)
)
})
## ----eval = FALSE-------------------------------------------------------------
# # _targets.R
# library(targets)
# library(jagstargets)
#
# generate_data <- function(n = 10) {
# true_beta <- stats::rnorm(n = 1, mean = 0, sd = 1)
# x <- seq(from = -1, to = 1, length.out = n)
# y <- stats::rnorm(n, x * true_beta, 1)
# out <- list(n = n, x = x, y = y)
# }
#
# # The _targets.R file ends with a list of target objects
# # produced by jagstargets::tar_jags(), targets::tar_target(), or similar.
# list(
# tar_jags(
# example,
# jags_files = "x.jags",
# parameters.to.save = "beta",
# data = generate_data()
# )
# )
## -----------------------------------------------------------------------------
tar_manifest()
## ----output = FALSE, message = FALSE------------------------------------------
tar_visnetwork(targets_only = TRUE)
## ----output = FALSE-----------------------------------------------------------
tar_make()
## -----------------------------------------------------------------------------
tar_read(example_summary_x)
## -----------------------------------------------------------------------------
tar_make()
## -----------------------------------------------------------------------------
write(" ", file = "x.jags", append = TRUE)
## -----------------------------------------------------------------------------
tar_outdated()
## -----------------------------------------------------------------------------
tar_visnetwork(targets_only = TRUE)
## ----output = FALSE-----------------------------------------------------------
tar_make()
## ----echo = FALSE-------------------------------------------------------------
# Writes the _targets.R file shown in the next code chunk.
tar_script({
library(jagstargets)
options(crayon.enabled = FALSE)
tar_option_set(memory = "transient", garbage_collection = TRUE)
list(
tar_jags(
example,
jags_files = "x.jags",
parameters.to.save = "beta",
data = tar_jags_example_data(),
stdout = R.utils::nullfile(),
stderr = R.utils::nullfile(),
),
tar_target(
custom_summary,
posterior::summarize_draws(
dplyr::select(example_draws_x, -starts_with(".")),
~posterior::quantile2(.x, probs = c(0.25, 0.75))
)
)
)
})
## ----eval = FALSE-------------------------------------------------------------
# # _targets.R
# library(targets)
# library(jagstargets)
#
# generate_data <- function(n = 10) {
# true_beta <- stats::rnorm(n = 1, mean = 0, sd = 1)
# x <- seq(from = -1, to = 1, length.out = n)
# y <- stats::rnorm(n, x * true_beta, 1)
# out <- list(n = n, x = x, y = y)
# }
#
# list(
# tar_jags(
# example,
# jags_files = "x.jags",
# parameters.to.save = "beta",
# data = generate_data()
# ),
# tar_target(
# custom_summary,
# posterior::summarize_draws(
# dplyr::select(example_draws_x, -starts_with(".")),
# ~posterior::quantile2(.x, probs = c(0.25, 0.75))
# )
# )
# )
## -----------------------------------------------------------------------------
tar_visnetwork(targets_only = TRUE)
## ----output = FALSE, warning = FALSE------------------------------------------
tar_make()
## -----------------------------------------------------------------------------
tar_read(custom_summary)
## -----------------------------------------------------------------------------
lines <- "model {
for (i in 1:n) {
y[i] ~ dnorm(x[i] * x[i] * beta, 1) # Regress on x^2 instead of x.
}
beta ~ dnorm(0, 1)
}"
writeLines(lines, "y.jags")
## ----echo = FALSE-------------------------------------------------------------
# Writes the _targets.R file shown in the next code chunk.
tar_script({
library(targets)
library(jagstargets)
list(
tar_jags(
example,
jags_files = c("x.jags", "y.jags"),
parameters.to.save = "beta",
data = tar_jags_example_data(),
stdout = R.utils::nullfile(),
stderr = R.utils::nullfile(),
),
tar_target(
custom_summary,
posterior::summarize_draws(
dplyr::select(example_draws_x, -starts_with(".")),
~posterior::quantile2(.x, probs = c(0.25, 0.75))
)
)
)
})
## ----eval = FALSE-------------------------------------------------------------
# # _targets.R
# library(targets)
# library(jagstargets)
#
# generate_data <- function(n = 10) {
# true_beta <- stats::rnorm(n = 1, mean = 0, sd = 1)
# x <- seq(from = -1, to = 1, length.out = n)
# y <- stats::rnorm(n, x * true_beta, 1)
# out <- list(n = n, x = x, y = y)
# }
#
# list(
# tar_jags(
# example,
# jags_files = c("x.jags", "y.jags"),
# parameters.to.save = "beta",
# data = generate_data()
# ),
# tar_target(
# custom_summary,
# posterior::summarize_draws(
# dplyr::select(example_draws_x, -starts_with(".")),
# ~posterior::quantile2(.x, probs = c(0.25, 0.75))
# )
# )
# )
## -----------------------------------------------------------------------------
tar_visnetwork(targets_only = TRUE)
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.