原文连接:
http://tecdat.cn/?p=6252tecdat.cnR的Stan
可以从许多统计软件包中运行Stan。到目前为止,我一直在从R运行Stan,首先按照快速入门指南中的说明安装并运行所有内容。
简单线性回归
第一步是为Stan模型编写文件。这包含一个文件linreg.stan:
data { int N; [N] x; vector[N] y; } parameters { real alpha; real beta; real sigma; } model { y ~ normal( + beta * x, sigma); }
该文件的第一部分称为数据,它声明了将作为输入传递给Stan的标量,向量和矩阵。
接下来,我们可以通过运行以下R代码来模拟数据集,并使用Stan和我们的文件linreg.stan来拟合模型:
set.seed(123) n <- 100 x <- rnorm(n) y <- x+ (n) mydata <- list(N = n, y = y, x= ) fit <- stan(file = 'linreg. ', data = mydata, iter = 1000, = 4)
第一次安装Stan模型时,模型编译成C ++时会有几秒钟的延迟。然而,正如Stan的开发人员描述的那样,一旦编译了模型,就可以将其应用于新的数据集而无需重复编译过程(在执行模拟研究的背景下具有很大的优势。
在上面的代码中,我们要求Stan运行4个独立的链,每个链有1000次迭代。运行后,我们可以通过以下