我试图在没有数据的情况下运行 Stan 模型来获取先前分布的图。但是,这似乎是不可能的,我收到一条关于我的模型不包含样本的错误消息。那么,有没有办法获得先前的分布?也许可以在没有采样器的情况下运行 Stan?
如何在 Stan 中绘制先验分布?
机器算法验证
事先的
斯坦
2022-03-16 19:40:35
1个回答
由于我之前的答案已被删除,因此这里有一个更明确的答案,其中一个示例使用了之前的简单抽样:
library(rstan)
model = "
parameters {
real p;
}
model {
p ~ normal(1,3);
}
"
fit = stan(model_code = model,
pars = c('p'),
control=list(adapt_delta=0.99, max_treedepth=10),
iter = 5000, chains = 1,
warmup = 1000, verbose=FALSE)
print(fit)
输出:
Inference for Stan model: a067aa7e9d60dcf5fa2c08c3db339374.
1 chains, each with iter=5000; warmup=1000; thin=1;
post-warmup draws per chain=4000, total post-warmup draws=4000.
mean se_mean sd 2.5% 25% 50% 75% 97.5% n_eff Rhat
p 1.02 0.07 3.0 -4.84 -1.02 1.01 3.07 6.83 1607 1
lp__ -0.50 0.02 0.7 -2.47 -0.66 -0.23 -0.05 0.00 1346 1
希望这可以帮助...