1

假设我有一个表格模型,我想y=a_{i} + b_{i,1}*x_{1} + b_{2}*x_{2}在哪里估计这个模型。i=1,2,...,12rstanarm

是否可以为每个截距设置不同的先验a_{i}(比如说前 4 个 have normal(location = 0, scale = 1, autoscale = TRUE),下一个 4 havenormal(location = 1, scale = 2, autoscale = TRUE)和最后一个 4 student_t(df = 1, location = 0, scale = NULL, autoscale = TRUE))。我还想为b_{i,1}and last设置相同的先验b_{2}~normal(location = 3, scale = 1, autoscale = TRUE)

可以用 rstanarm 做到这一点吗?

4

1 回答 1

2

rstanarm支持的模型中最多有一个截距,但您可以通过在公式中包含 -1 并将虚拟变量上的系数视为系数来抑制截距。对于系数,您可以执行类似 prior = student_t(df = c(rep(Inf, 8), rep(1, 4)), location = c(rep(0, 4), rep(1, 4), rep(0, 4)), scale = c(rep(1, 4), rep(2, 4), rep(1, 4)), autoscale = TRUE) 但似乎您打算使用某种层次模型,在这种情况下,与全局参数的偏差的先验只能是多元正态的。见?prior_decov

于 2017-08-07T15:15:11.787 回答