R/random_walk.R

Defines functions random_walk

Documented in random_walk

random_walk <- function(pd, start, num_steps){
  y <- rep(0, num_steps)
  current <- start
  for (j in 1:num_steps){
    candidate <- current + sample(c(-1, 1), 1)
    prob <- pd(candidate) / pd(current)
    if (runif(1) < prob) current <- candidate
    y[j] <- current
  }
  return(y)
}
bayesball/TeachBayes documentation built on Jan. 5, 2020, 1:47 a.m.