开始使用免费开始使用

可复现性

既然您已经完成(而且通过了!)一些马尔可夫链诊断,就可以着手最终定稿您的 RJAGS 模拟了。为此,可复现性至关重要。若要获得可复现的模拟输出,必须设置 RJAGS 随机数生成器的种子。这与基础 R 的做法不同。您不会使用 set.seed(),而是在"编译"模型时,通过 inits = list(.RNG.name = "base::Wichmann-Hill", .RNG.seed = ___) 指定起始种子。

本练习是课程的一部分

使用 RJAGS 的贝叶斯建模

查看课程

练习说明

  • 将提供的代码运行几次。注意每次 summary() 统计量都会变化。

  • 为了得到可复现的结果,请在 jags.model() 中提供随机数生成器的 inits,并将起始种子设置为 1989。

  • 再运行新代码几次。注意此时 summary() 统计量不会变化!

交互式实操练习

通过完成这段示例代码来试试这个练习。

# COMPILE the model
sleep_jags <- jags.model(textConnection(sleep_model), data = list(Y = sleep_study$diff_3)) 

# SIMULATE the posterior    
sleep_sim <- coda.samples(model = sleep_jags, variable.names = c("m", "s"), n.iter = 10000)

# Summarize the m and s chains of sleep_sim
summary(sleep_sim)
编辑并运行代码