今天介绍下 Stan 旗下的另一个 R 包:shinystan[1],该包可以对贝叶斯模型进行交互式诊断和后验分析。ShinyStan 为 MCMC 仿真提供模型参数的即时、信息丰富、可定制的视觉和数值摘要以及收敛诊断。
注意:关于贝叶斯方法的相关推文可见:贝叶斯推断R包综述、Bayesplot 包:可视化贝叶斯模型、学习贝叶斯统计的 R 包及配套书籍、贝叶斯 RStan 包入门教程。
安装
# 安装CRAN的最新版本: install.packages("shinystan") # 从GitHub安装开发版本: if (!require("devtools")) { install.packages("devtools") } devtools::install_github("stan-dev/shinystan", build_vignettes = TRUE)
演示
安装完后,运行以下代码,即可得到以下界面。该 demo 是基于经典的八校数据(详细见:贝叶斯 RStan 包入门教程)。
library("shinystan") launch_shinystan_demo()
界面包含四个部分:
- 诊断
- 估计
- 探索
- 更多
shinystan 包允许读者将整个项目的基本组件(代码、后样本、图表、表格、注释)存储在单个对象中。用户可以将许多绘图保存为 ggplot2 对象,以便进一步自定义并轻松集成到报告中或进行后处理以供发布。
shinystan 还提供了该 deploy_shinystan 功能,让您可以使用 RStudio 的 ShinyApps 服务为你的任何模型轻松在线部署自己的 ShinyStan 应用程序。读者的每个应用程序都将具有唯一的 URL,并且与 Safari、Firefox、Chrome 和大多数其他浏览器兼容。
应用
上面介绍了 demo 数据的结果,如果读者想使用自己的贝叶斯模型,则可以直接使用以下代码:
launch_shinystan(fit)
其中, fit 是读者拟合好的贝叶斯模型。
参考资料
[1]
shinystan: https://mc-stan.org/shinystan/