stanfit
返回了一个名为fit
的{{1}}对象,用于推断参数rstan::stan(...)
。我现在可以使用例如theta
进行分析。 theta
。
我后来意识到我对rstan::summary(fit, pars="theta")
的方格的推断更感兴趣。我应该在STAN模型中包含一个theta
块,以在输出中包含transformed parameters
作为参数。
是否可以将已转换的参数theta_squared
添加到现有theta_squared <- theta^2
对象,就好像它是在stanfit
块中计算的一样?
答案 0 :(得分:2)
我不知道您是否可以(或应该)手动将参数添加到stanfit对象中。
至少你可以按as.data.frame(fit)
获取MCMC样本,然后根据需要使用它,包括定义theta^2
。
答案 1 :(得分:1)
你可以使用ShinyStan获得很多相同的图形(rhat,ac等),它允许你添加这样的数量(如果它是一个标量)。例如,
library("shinystan")
# create shinystan object (sso)
sso <- as.shinystan(fit)
# add theta_squared to sso
sso <- generate_quantity(sso, fun = function(x) x^2,
param1 = "theta", new_name = "theta_squared")
# launch the shinystan interface
launch_shinystan(sso)