可以說我有一個表格y=a_{i} + b_{i,1}*x_{1} + b_{2}*x_{2}
模型,其中i=1,2,...,12
和我想估計這個模型使用rstanarm
。如何把不同的先輩使用rstanarm
是否有可能爲每個攔截a_{i}
設置不同的先驗(因此可以說,前4個具有normal(location = 0, scale = 1, autoscale = TRUE)
,在接下來的4有normal(location = 1, scale = 2, autoscale = TRUE)
,最後4 student_t(df = 1, location = 0, scale = NULL, autoscale = TRUE)
)。我還想爲b_{i,1}
和最後b_{2}~normal(location = 3, scale = 1, autoscale = TRUE)
設置相同的前綴。
是否有可能用rstanarm做到這一點?
謝謝你的回答。 ** 1)**如果我理解正確,加入「-1」也不會導致多重共線性,對嗎?這只是解釋的變化。 ** 2)**我想用我的例子說的是,如果你可以代替具有位置和尺度參數的矢量,也可以傳遞具有不同分佈的矢量(如果我錯了,請糾正我,但是在你的答案中,你通過操縱df將t分佈轉化爲正常 – quant
是的,在R公式中有'-1'或'+ 0'可以刪除截距,因此它可以包含一個因子級別作爲虛擬變量。 –
不,在** rstanarm **包中,不能將函數的列表或字符向量傳遞給'prior'參數。您只能將'location','scale','df'等向量傳遞給'student_t'等函數。然而,因爲當自由度是無限時,'student_t'等同於'normal'',這相當於在你最初給出的例子中使用「不同的」函數。通過** brms ** R軟件包中的'brm'函數,您可以爲Stan估計的模型中的不同參數指定不同的先前系列。 –