1

我有一个贝叶斯代码,用于估计 RStan 中的模型(有点复杂的模型)。在估计模型后,我从后验分布中抽取了 500 个参数集样本,以模拟来自模型的未来数据(接下来的 1 个月)。最后,我采用了预测值的平均值(每个时间点的 500 个预测值),然后将它们与实际观察值(带有绘图)进行了比较。

我的问题是 - 我如何计算这些预测值平均值的区间?

示例:在从后验分布中抽取参数样本后,我使用这些参数从模型中模拟了变量 X1、X2、....X30:

X1= (33,25,10,19,25)
X2= (11,10,15,13.5,17)
.......

X30= (40,33.3,50,29,45.1)

现在我发现 mean(X1); mean(X2);....mean(X30) 并根据时间绘制它们。我想找到这些手段的间隔。

4

1 回答 1

3

每个 X1 ... X30 的后部抽签示例:

m <- matrix(data = rep(rnorm(500, 0, 1), 30), nrow = 500, ncol = 30, byrow = FALSE)
colnames(m) <- paste0("X", 1:30)

获得这些平局的可信区间:

ci <- apply(m, 2, quantile, probs = c(0.1, 0.9))
colnames(ci) <- paste0("X", 1:30)
于 2017-10-30T23:57:41.667 回答