【发布时间】:2015-11-21 19:31:51
【问题描述】:
我有一个字符串,比如"ti[123]",还有一个对应的值,比如1.2
我应该在 R 中使用什么命令将 1.2 分配给向量 ti 的第 123 个位置?
我尝试了assign("ti[123]",1.2),但它创建了一个名为ti[123] 的新变量,这不是我所期望的。
我需要这样做的原因是我使用 rstan 的 optimizing 函数来优化模型,它返回一个命名向量,名称如下(如果你碰巧在模型中使用参数向量)。
【问题讨论】:
-
replace(ti, 123, 1.2)怎么样?这将用 1.2 替换 123。 -
如果需要从字符串中提取
library(stringr); assign('ti', '[[<-'(ti, as.numeric(str_extract("ti[123]", '(?<=\\[)\\d+')), 1.2)) -
我敢打赌,有更好的方法可以从 stan 输出中提取结果...
标签: r parsing variable-assignment stan rstan