问题标签 [rstan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
713 浏览

r - 如何使用 rstanarm 放置不同的先验

假设我有一个表格模型,我想y=a_{i} + b_{i,1}*x_{1} + b_{2}*x_{2}在哪里估计这个模型。i=1,2,...,12rstanarm

是否可以为每个截距设置不同的先验a_{i}(比如说前 4 个 have normal(location = 0, scale = 1, autoscale = TRUE),下一个 4 havenormal(location = 1, scale = 2, autoscale = TRUE)和最后一个 4 student_t(df = 1, location = 0, scale = NULL, autoscale = TRUE))。我还想为b_{i,1}and last设置相同的先验b_{2}~normal(location = 3, scale = 1, autoscale = TRUE)

可以用 rstanarm 做到这一点吗?

0 投票
1 回答
62 浏览

r - 我们如何在 rstanarm 中找到每次迭代的不同值?

我确实在rstanarm. 当我执行以下代码时,它给出了所有迭代的预测变量的平均值:

我想要我的解决方案在每次迭代中预测变量的值。谁能帮我解决这个问题?

0 投票
1 回答
762 浏览

r - stan - 难以矢量化

我有:

mu_x - 一个 10x10 的实数值矩阵

ptype - 一个 10000 长的向量

sender_name_type - 一个 10000 长的向量

我想找到的值

x_real - 一个 10000 长的向量

我目前拥有和工作的代码是:

但是,我想对其进行矢量化。为此,我首先需要处理 if 子句。为此,我尝试添加两个发行版,如下所示:

但是,Rstan 似乎无法处理加法/乘法分布。我尝试的第二种方法是这样的:

这类似于第一种方法,但它重新定义了满足条件的 x_real 的行。但是,它给了我的错误

没有匹配项:

真实 [] ~ 正常(矩阵,真实)

如果可能,我如何矢量化我当前的解决方案?还有其他方法可以加快速度吗?

0 投票
0 回答
247 浏览

r - 应用于 stan 对象的 extract() 和 as.matrix() 之间的区别

我有一个 Stan 模型(称为fit),我得到了一些奇怪的结果。我知道我可能遗漏了一些东西,但我看不出在哪里和什么。在这种情况下,我想查看参数sigma_h

如果我用来as.matrix从中获取样本,fit我会得到以下结果:

在此处输入图像描述

这与我使用该rstan::traceplot函数时得到的图相同。

如果我从对象中提取样本fit并绘制它,我会得到

在此处输入图像描述

这些地块并不相同。我错过了什么?fit仅将对象设为矩阵和提取样本之间有区别吗?

0 投票
1 回答
71 浏览

r - 未来预测值均值的区间估计

我有一个贝叶斯代码,用于估计 RStan 中的模型(有点复杂的模型)。在估计模型后,我从后验分布中抽取了 500 个参数集样本,以模拟来自模型的未来数据(接下来的 1 个月)。最后,我采用了预测值的平均值(每个时间点的 500 个预测值),然后将它们与实际观察值(带有绘图)进行了比较。

我的问题是 - 我如何计算这些预测值平均值的区间?

示例:在从后验分布中抽取参数样本后,我使用这些参数从模型中模拟了变量 X1、X2、....X30:

现在我发现 mean(X1); mean(X2);....mean(X30) 并根据时间绘制它们。我想找到这些手段的间隔。

0 投票
2 回答
1456 浏览

r - 在贝叶斯模型中绘制交互效果(使用 rstanarm)

我试图展示一个变量的影响如何随着 rstanarm() 中的贝叶斯线性模型中的另一个变量的值而变化。我能够拟合模型并从后验中提取以查看每个参数的估计值,但尚不清楚如何给出一个变量在交互中的影响的某种图,因为其他变量和相关的不确定性(即边际效应图)。以下是我的尝试:

0 投票
1 回答
163 浏览

r - can't install rstan because depending on itself

i'm trying to install Rstan on Debian for Rstudio server and seems to be a dead end.

The issue is:

  • I'm installing a package that depends on rstan. So I try to install rstan before

    install.package("rstan")

  • Error: rstan depend on brms, so I try to install brms

    install.package("brms")

  • Error: brms depends on shinystan, so I try to install shinystan

    install.package("shinystan")

  • Error: shinystan depends on rstan (WTF!!!!)

and this is the dead end.

How can I get out this circle?

0 投票
0 回答
694 浏览

stan - stan中的整数矩阵变平

我正在尝试将一个三维数据结构传递给 Stan(在 RStan 中),其中条目必须是整数,因为下游的函数需要这样做。但是我在声明它时遇到了麻烦。

我尝试了直截了当的方法:

int x[n,n,k];

但这给了我错误

mismatch in number dimensions declared and found in context; ... dims declared=(n,n,k); dims found=(n*n*k)

显然,出于某种原因(我不明白),输入数组正在变平。我给它一个简单的 3d 数组,没有 NA,尺寸在我通过它之前看起来很正确。事实上,同样的事情也发生在二维数组上,这意味着我什至不能声明一组二维矩阵作为一种解决方法。

然后我尝试了

row_vector[K] x[N,N];

但这回馈real,不是int。当我做类似的事情时

int row_vector[K] x[N,N];

那只是不正确的语法。

我还尝试传递逻辑值,希望它们被重新转换为整数,但没有。我传递了数组,我用 as.matrix 传递了它们,我在放入数据列表之前和之后检查了它们的维度。

这是 OSX 10.11.6 上的 R 版本 3.4.1,使用的是最新版本的 stan,它是今天刚刚从源代码编译的。

我错过了什么?或者,我如何将单个实数转换为整数,以便整数要求函数不会中断?

(而且,文档在哪里?我能找到的最好的是早已死去的评论线程。)

0 投票
0 回答
120 浏览

r - RStan 中简单网络潜在空间模型中的无限梯度

我正在尝试在 RStan 中拟合潜在空间模型,这是一种成熟的(社交)网络模型。(这意味着这可能是 CrossValidated 的一个问题,但我有理由相信它还不是。)我知道包是可用的,但我正在努力构建一些没有包实现的东西,并且想首先确保我可以制作一个可验证的模型工作。

为了快速直观,LSM 采用一个网络,并尝试找到节点的布局,这样靠近的节点有边,而相距较远的节点没有。节点的位置是模型试图估计的潜在变量(连同截距,对应于形成边缘的总体倾向)。

我的代码(全部在下面,在两个文件中)从 LSM 假定类型的数据生成过程生成一个简单而小的杠铃图(两端密集,中间稀疏)。然后,它将这些数据传递给 RStan,它找到了一个无限的梯度,以及包 latentnet,它工作得很好。

该错误表明我从一个良好的初始化开始,所以我提供了 TRUE 生成值,并且采样器仍然找到一个无限梯度。它还建议尽可能放宽对变量的约束,但我的约束只是方差参数的下限。这让我相信我的问题出在其他地方,但我对 Stan 还不够熟悉,无法看到哪里。任何帮助,包括运行测试的建议,将不胜感激。

首先,R:

在这里,斯坦的模型:

0 投票
3 回答
2366 浏览

r - R 软件包安装失败:x86_64-apple-darwin13.4.0-ar:没有这样的文件或目录 - 什么是“ar”?

我在安装 R 包时出现这个错误,比如 RStan(以及任何依赖它的东西,比如 brms)和 Devtools。由于在安装过程中显示的消息中,在此之前一切正常,我认为安装失败可以归结为:

我在使用 Xcode 编译器和 clang4 编译器时都遇到了同样的错误;我认为问题不在于编译器,而在于名为ar. 顺便说一句,我已经安装了 Rcpp 并且它可以工作。我看到其他人在安装 RPy2 时遇到了同样的问题。那是什么ar东西以及如何解决它?

R版本: