#devtools::install(quick = TRUE,build_vignettes = FALSE) devtools::load_all() library(rstan) rstan_options(auto_write = TRUE) library(tidyverse) library(RNASeqNoiseModel) library(here) simple_model_code = " data { real x[5]; } parameters { real mu; } model { x ~ normal(mu, 1); } " simple_model = stan_model(model_code = simple_model_code) second_simple_model = stan_model(model_code = " data { real x[7]; } parameters { real<lower=0> sigma; } model { x ~ normal(0, sigma); } ")
num_data = 10 data_list = list() for(i in 1:num_data) { data_list[[i]] = list(x = rnorm(5, i, 1)) } res = sampling_multi(simple_model, data_list) res[[1]] res[[10]]
num_data = 5 data_list_mixed = list() models = list() for(i in 1:num_data) { data_list_mixed[[i]] = list(x = rnorm(5, i, 1)) models[[i]] = simple_model } for(i in 1:num_data) { data_list_mixed[[i + num_data]] = list(x = rnorm(7, 0, i)) models[[i + num_data]] = second_simple_model } res = sampling_multi(models, data_list_mixed) res[[1]] res[[5]] res[[6]] res[[10]]
Storing to files
num_data = 10 data_list = list() for(i in 1:num_data) { data_list[[i]] = list(x = rnorm(5, i, 1)) } if(!dir.exists(here("local_temp_data"))) { dir.create(here("local_temp_data")) } res = sampling_multi(simple_model, data_list, map_fun = sampling_multi_store_file_generator(here("local_temp_data"),"simple_fit"), combine_fun = c) res[[1]] res[[1]] %>% map(readRDS) %>% sflist2stanfit() res[[10]] res[[10]] %>% map(readRDS) %>% sflist2stanfit()
Control arguments
res = sampling_multi(simple_model, data_list, control = list(adapt_delta = 0.95)) res[[1]]@stan_args[[1]]$control$adapt_delta
cache_dir <- here("local_temp_data","test_cache") if(!dir.exists(cache_dir)){ dir.create(cache_dir) } res = sampling_multi(simple_model, data_list, cache_dir = cache_dir) #Expect all read from cache res_cached = sampling_multi(simple_model, data_list, cache_dir = cache_dir) #Expect not read from cache - half data, half model res_cached_cached_changed = sampling_multi(models, data_list_mixed, cache_dir = cache_dir)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.