繁体   English   中英

将转换后的参数添加到stanfit对象

[英]Adding a transformed parameter to stanfit object

我有一个名为fitstanfit对象,由rstan::stan(...)以推断参数theta 我现在可以使用例如rstan::summary(fit, pars="theta")分析theta

后来我意识到,我对推断theta的平方更感兴趣。 我应该在STAN模型中包含一个transformed parameters块,以将theta_squared作为参数包含在输出中。

是否可以将转换后的参数theta_squared <- theta^2到现有的stanfit对象中,就像它是在transformed parameters块中计算出来的一样?

我不知道您是否可以(或应该)手动向stanfit对象添加参数。 至少您可以通过as.data.frame(fit)获得MCMC样本,然后根据需要对其进行处理,包括定义theta^2

您可以使用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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM