Nothing
## ----include=FALSE------------------------------------------------------------
#Load in the data and load the library
library(EcoEnsemble)
#load("data/vignette_plots.Rdata")
## ----label="Observations"-----------------------------------------------------
SSB_obs
Sigma_obs
## ----label="EwESigma"---------------------------------------------------------
Sigma_ewe
## ----label="lmSigma"----------------------------------------------------------
Sigma_lm
## ----label="mizSigma"---------------------------------------------------------
Sigma_miz
## ----label="fsSigma"----------------------------------------------------------
Sigma_fs
## ----model_outputs, warning=FALSE, fig.dim = c(7, 3), message = FALSE, echo = FALSE----
library(tibble)
library(dplyr)
library(reshape2)
library(ggplot2)
#Inlcude years in the data frames
SSB_obs_tmp <- rownames_to_column(SSB_obs, var = "Year")
SSB_ewe_tmp <- rownames_to_column(SSB_ewe, var = "Year")
SSB_miz_tmp <- rownames_to_column(SSB_miz, var = "Year")
SSB_lm_tmp <- rownames_to_column(SSB_lm, var = "Year")
SSB_fs_tmp <- rownames_to_column(SSB_fs, var = "Year")
#Join dataframes together
df_all <- SSB_obs_tmp %>%
full_join(SSB_ewe_tmp, by = "Year", suffix = c("","_ewe")) %>%
full_join(SSB_miz_tmp, by = "Year", suffix = c("","_miz")) %>%
full_join(SSB_lm_tmp, by = "Year", suffix = c("","_lm")) %>%
full_join(SSB_fs_tmp, by = "Year", suffix = c("","_fs"))
#Melt into long data format for ggplot
df_all <- melt(df_all, id.vars = "Year")
colnames(df_all) <- c("Year", "Simulator", "logSSB")
df_all$Year <- as.numeric(df_all$Year)
#Finally create the plots
df_n_pout <- df_all[grepl("N.pout", df_all$Simulator), ]
p1 <- ggplot(data=df_n_pout, aes(x=`Year`, y=`logSSB`, na.rm = TRUE)) +
geom_line(aes(group=`Simulator`,colour=`Simulator`)) +
ggtitle("Norway pout")
df_herring <- df_all[grepl("Herring", df_all$Simulator), ]
p2 <- ggplot(data=df_herring, aes(x=`Year`, y=`logSSB`, na.rm = TRUE)) +
geom_line(aes(group=`Simulator`,colour=`Simulator`)) +
ggtitle("Herring")
df_cod <- df_all[grepl("Cod", df_all$Simulator), ]
p3 <- ggplot(data=df_cod, aes(x=`Year`, y=`logSSB`, na.rm = TRUE)) +
geom_line(aes(group=`Simulator`,colour=`Simulator`))+
ggtitle("Cod")
df_sole <- df_all[grepl("Sole", df_all$Simulator), ]
p4 <- ggplot(data=df_sole, aes(x=`Year`, y=`logSSB`, na.rm = TRUE)) +
geom_line(aes(group=`Simulator`,colour=`Simulator`)) +
ggtitle("Sole")
cowplot::plot_grid(p1, p2, p3, p4, ncol = 2, nrow = 2)
## -----------------------------------------------------------------------------
#Setting priors for an ensemble model with 4 variables of interest.
priors <- EnsemblePrior(4)
## -----------------------------------------------------------------------------
priors_custom <- EnsemblePrior(
d = 4,
ind_st_params = IndSTPrior("lkj", list(25, 0.25), 30),
ind_lt_params = IndLTPrior(
"beta",
list(c(25, 25, 25, 10),c(0.25, 0.25, 0.25, 0.1)),
list(matrix(40, 4, 4), matrix(40, 4, 4))
),
sha_st_params = ShaSTPrior("lkj", list(25, 0.25), 30),
sha_lt_params = 3)
## ---- label = "fit", eval=FALSE-----------------------------------------------
# fit_sample <- fit_ensemble_model(observations = list(SSB_obs, Sigma_obs),
# simulators = list(list(SSB_ewe, Sigma_ewe, "EwE"),
# list(SSB_lm, Sigma_lm, "LeMans"),
# list(SSB_miz, Sigma_miz, "mizer"),
# list(SSB_fs, Sigma_fs, "FishSUMS")),
# priors = priors)
# samples <- generate_sample(fit_sample)
## ---- label = "Initial_plots", eval=FALSE-------------------------------------
# plot(samples)
## ----fig.dim = c(7, 4), echo=FALSE, warning = FALSE---------------------------
knitr::include_graphics("data/plot_initial_outputs.png")
## ---- label = "Initial_plots_changed", fig.dim = c(7, 4), eval=FALSE----------
# plot(samples, variable = "Cod", quantiles = c(0.25, 0.75)) +
# ggplot2::theme_classic() +
# ggplot2::scale_color_brewer(palette="Set2") +
# ggplot2::ylab("SSB (log tonnes)")
## ----fig.dim = c(7, 4), echo=FALSE, warning = FALSE---------------------------
knitr::include_graphics("data/plot_initial_customised.png")
## ----visualise_priors, eval= FALSE--------------------------------------------
# prior_model <- prior_ensemble_model(priors = priors, M = 4)
# prior_samples <- sample_prior(observations = list(SSB_obs, Sigma_obs),
# simulators = list(list(SSB_ewe, Sigma_ewe, "EwE"),
# list(SSB_lm, Sigma_lm, "LeMans"),
# list(SSB_miz, Sigma_miz, "mizer"),
# list(SSB_fs, Sigma_fs, "FishSUMS")),
# priors = priors, prior_model)
#
## ----plot_priors, fig.dim = c(7, 4), eval = FALSE-----------------------------
# plot(prior_samples)
## ----fig.dim = c(7, 6), echo = FALSE, warning = FALSE-------------------------
knitr::include_graphics("data/plot_priors_only.png")
## ---- label = "create_data_manual"--------------------------------------------
ens_data <- EnsembleData(observations = list(SSB_obs, Sigma_obs),
simulators = list(list(SSB_ewe, Sigma_ewe, "EwE"),
list(SSB_lm, Sigma_lm, "LeMans"),
list(SSB_miz, Sigma_miz, "mizer"),
list(SSB_fs, Sigma_fs, "FishSUMS")),
priors = priors)
## ---- label = "fitting_ensemble_DIY", eval=FALSE------------------------------
# mod <- get_mcmc_ensemble_model(priors)
# samples <- rstan::sampling(mod, data = ens_data@stan_input)
# fit <- EnsembleFit(ens_data, samples = samples)
## ---- eval = FALSE------------------------------------------------------------
# # Generating samples using DIY functions
# transf_data <- get_transformed_data(fit)
# mle_sample <- gen_sample(1, ex.fit = rstan::extract(samples), transformed_data = transf_data,
# time = ens_data@stan_input$time)
## ---- eval=FALSE--------------------------------------------------------------
# fit <- fit_ensemble_model(observations = observations, simulators = simulators,
# priors = priors)
# samples_tmp <- generate_sample(fit)
# samples <- samples_tmp@samples
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.