## ----setup, include = FALSE--------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) set.seed(1234) #For reproducibility ## ----example usage------------------------------------------------------------ library(avseqmc) G1 <- function(){runif(1) < 0.01} # A mock MC function to demonstrate functionality R1 <- avseqmc(sample_G = G1, epsilon = 0.001) print(R1) ## ----visualization , fig.width=5, fig.height=5, out.width="50%"--------------- plot(R1) ## ----maximum samples---------------------------------------------------------- G2 <- function(){runif(1) < 0.05} R2 <- avseqmc(sample_G = G2, epsilon = 0.001) print(R2) ## ----resuming computation----------------------------------------------------- G3 <- function(){runif(1) < 0.03} R3a <- avseqmc(sample_G = G3, epsilon = 0.001) print(R3a) R3b <- avseqmc(R3a) print(R3b) ## ----stopping for futility---------------------------------------------------- G4 <- function(){runif(1) < 0.04} R4 <- avseqmc(sample_G = G4, epsilon = 0.001, stopcrit = list("type" = "futility", param = 0.1)) # Stop when inference can be drawn at 10% significance print(R4) ## ----stopping for convergence------------------------------------------------- G5 <- function(){runif(1) < 0.04} R5 <- avseqmc(sample_G = G5, epsilon = 0.001, stopcrit = list("type" = "convergence", param = c(1e-5, 100))) print(R5) ## ----batch sampling----------------------------------------------------------- G6 <- function(){runif(15) < 0.04} R6 <- avseqmc(sample_G = G6, epsilon = 0.001) print(R6) ## ----manual resuming---------------------------------------------------------- G7 <- function(){runif(1) < 0.04} R7a <- init_avseqmc_progress(sample_G = G7, epsilon = 0.001, ptilde = 0.0819, n = 1000) R7b <- avseqmc(R7a) ## ----safe manual resuming----------------------------------------------------- G7 <- function(){runif(1) < 0.04} R7a <- init_avseqmc_progress(sample_G = G7, epsilon = 0.001, ptilde = 0.0813, n = 1000, S = 44) ## ----custom stopping time, message=TRUE--------------------------------------- G8 <- function(){runif(1) < 0.04} customstop <- function(R){ if(length(R$ptilde) > 50){ if(sum(R$B[(length(R$B)-49):length(R$B)]) <= 1 ){ return(TRUE) } } return(FALSE) } R8 <- avseqmc(sample_G = G8, epsilon = 0.001, stopcrit = customstop) print(R8)