## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) set.seed(2023) ## ----setup, echo = T, results = 'hide', message = F--------------------------- library(FVDDPpkg) ## ----------------------------------------------------------------------------- FVDDP = initialize(theta = 1.28, sampling.f = function(x) rpois(x, 5), density.f = function(x) dpois(x, 5), TRUE) ## ----------------------------------------------------------------------------- FVDDP ## ----results ='hide'---------------------------------------------------------- FVDDP = update(fvddp = FVDDP, y.new = c(7, 4, 9, 7)) ## ----------------------------------------------------------------------------- FVDDP ## ----results='hide'----------------------------------------------------------- FVDDP = propagate(fvddp = FVDDP, delta.t = 0.6) ## ----------------------------------------------------------------------------- FVDDP ## ----hide=T------------------------------------------------------------------- FVDDP = update(fvddp = FVDDP, y.new = c(4, 7, 7, 10, 10, 5)) ## ----------------------------------------------------------------------------- FVDDP ## ----results ='hide'---------------------------------------------------------- FVDDP_NONATOMIC = initialize(theta = 0.7, sampling.f = function(x) rbeta(x, 4, 7), density.f = function(x) dbeta(x, 4, 7), atomic = FALSE) FVDDP_PAST_NONATOMIC = update(fvddp = FVDDP_NONATOMIC, y.new = c(0.210, 0.635, .541)) FVDDP_FUTURE_NONATOMIC = update(fvddp = FVDDP_NONATOMIC, y.new = c(0.210)) FVDDP_FUTURE_NONATOMIC = propagate(fvddp = FVDDP_FUTURE_NONATOMIC, delta.t = 0.4) FVDDP_FUTURE_NONATOMIC = update(fvddp = FVDDP_FUTURE_NONATOMIC, y.new = c(.635)) ## ----results='hide'----------------------------------------------------------- FVDDP_SMOOTH_NONATOMIC = smooth(fvddp.past = FVDDP_PAST_NONATOMIC, fvddp.future = FVDDP_FUTURE_NONATOMIC, t.past = 0.75, t.future = 0.3, y.new = c(0.210, 0.635, 0.479)) ## ----------------------------------------------------------------------------- FVDDP_SMOOTH_NONATOMIC ## ----results ='hide'---------------------------------------------------------- FVDDP_ATOMIC = initialize(theta = 0.7, sampling.f = function(x) rbeta(x, 10, 0.6), density.f = function(x) dbinom(x, 10, 0.6), atomic = TRUE) FVDDP_PAST_ATOMIC = update(fvddp = FVDDP_ATOMIC, y.new = c(2, 6, 5)) FVDDP_FUTURE_ATOMIC = update(fvddp = FVDDP_ATOMIC, y.new = c(2)) FVDDP_FUTURE_ATOMIC = propagate(fvddp = FVDDP_FUTURE_ATOMIC, delta.t = 0.4) FVDDP_FUTURE_ATOMIC = update(fvddp = FVDDP_FUTURE_ATOMIC, y.new = c(6)) ## ----results='hide'----------------------------------------------------------- FVDDP_SMOOTH_ATOMIC = smooth(fvddp.past = FVDDP_PAST_ATOMIC, fvddp.future = FVDDP_FUTURE_ATOMIC, t.past = 0.75, t.future = 0.3, y.new = c(2, 6, 4)) ## ----------------------------------------------------------------------------- FVDDP_SMOOTH_ATOMIC ## ----results = 'hide'--------------------------------------------------------- FVDDP =initialize(theta = 3, sampling.f= function(x) rnorm(x, -1, 3), density.f = function(x) dnorm(x, -1, 3), atomic = FALSE) FVDDP = update(fvddp = FVDDP, y.new = c(-1.145, 0.553, 0.553, 0.553)) ## ----results='hide'----------------------------------------------------------- FVDDP_APPR_PROP = approx.propagate(fvddp = FVDDP, delta.t = 0.45, N = 20000) ## ----------------------------------------------------------------------------- FVDDP_APPR_PROP ## ----results='hide'----------------------------------------------------------- FVDDP_EXACT_PROP = propagate(fvddp = FVDDP, delta.t = 0.45) ## ----------------------------------------------------------------------------- error.estimate(FVDDP_EXACT_PROP, FVDDP_APPR_PROP) ## ----results='hide'----------------------------------------------------------- FVDDP_SMOOTH_APPR = approx.smooth(fvddp.past = FVDDP_PAST_ATOMIC, fvddp.future = FVDDP_FUTURE_ATOMIC, t.past = 0.75, t.future = 0.3, y.new = c(2, 6, 4), N = 50000) ## ----------------------------------------------------------------------------- FVDDP_SMOOTH_APPR ## ----------------------------------------------------------------------------- error.estimate(FVDDP_SMOOTH_ATOMIC, FVDDP_SMOOTH_APPR) ## ----------------------------------------------------------------------------- PRUNED = prune(fvddp = FVDDP_SMOOTH_ATOMIC, eps = 1e-02) ## ----------------------------------------------------------------------------- PRUNED ## ----results = 'hide'--------------------------------------------------------- y = posterior.sample(fvddp = FVDDP_EXACT_PROP, N = 100) ## ----------------------------------------------------------------------------- table(round(y, 3)) ## ----results = 'hide'--------------------------------------------------------- y = predictive.struct(fvddp = FVDDP_EXACT_PROP, N = 100) ## ----------------------------------------------------------------------------- table(round(y, 3))