【发布时间】:2011-04-07 03:14:02
【问题描述】:
我目前在循环中使用多个参数从tkrplot 库中调用rp.slider,例如:
rp.slider(rpplot, param1)
rp.slider(rpplot, param2)
等等
理想情况下,我想在循环中执行此操作,例如
for(i in 1:10)
rp.slider(rpplot, foo(paste(param,i,sep="")))
foo 会将字符串编码为变量名(符号?)。 rp.slider 使用deparse(substitute(var)) 将参数转换为字符串。是否有一个foo 函数可以让我这样做?我尝试了as.symbol、as.name 和parse(以及其他)但没有成功。
任何帮助将不胜感激!
为了澄清,deparse(substitute(x)) 返回 [1] "x" - 我想要一种从字符串返回相同输出的方法,即 foo 输出 [1] "x" 用于输入 deparse(substitute(foo("x")))?可能吗?
【问题讨论】:
-
澄清一下,
deparse(substitute(x))返回[1] "x"- 我想要一种从字符串返回相同输出的方法,即哪个foo输出[1] "x"用于输入deparse(substitute(foo("x")))?有可能吗? -
你应该尽量避免循环......
-
@aL3xa :在绘图时,在大多数情况下使用 apply 系列是不可行的。 apply 在本地环境中工作,并在与绘图功能结合使用时会做一些有趣的事情。
-
plyr系列“_”函数是另一个可行的替代方案。我也喜欢failwith选项,它为特定情节无法按预期工作时提供故障保护。
标签: r reflection