首页 > 解决方案 > Rstan 中向量的数组格式

问题描述

请创建一个 stan 文件,例如 aaa.stan 。在这个 aaa.stan 文件中,请写如下:

transformed parameters { 
        vector  [11] xxx [21];
      xxx[33][4]=2;
}

当我按下 Check 按钮时,我遇到了以下奇怪的输出

> rstan:::rstudio_stanc("aaa.stan")
aaa.stan is syntactically correct.

即使我的代码不正确,为什么计算机说正确?

标签: arraysvectorstan

解决方案


这只是意味着 Stan 文件解析为 C++ 文件。但是解析器不会检查事物是否保持在索引的范围内,部分原因是您可以声明vector[K] x;并且直到运行时它才知道有多大K。通常,Stan 解析器几乎不检查逻辑,尽管在这种情况下,当您分配2xxx[33][4].


推荐阅读