示例代码:
target = Y ~ X1 + X2 + X3
now = target
我想通过使用target
(现在是)的变量名自动获取now
(它是目标)的变量名
预期结果:
paste0(***the thing I need***,".best")
"target.best"
我需要的东西 应该仅与 now
相关(因为我想自动运行代码)>
有人可以帮我吗? thx:)
目前,我知道可以使用函数deparse(substitute())
来获取名称,但是,Idk仅通过使用名称target
来获取名称now
。
通过使用函数get()
,我只能获取target的值,而不能获取名称。
在我的情况下,变量now
所指的是灵活的,它可以是target1
或target2
,依此类推。我想要的是通过不使用变量名now
/ target1
获得target2
所指的内容。例如,如果使用now = target2
,则预期答案应该只能通过使用变量名"target2"
来获得now
,而不应包括target2
。
答案 0 :(得分:1)
仅使用replace()声明变量now
可以实现您的首选输出。让我知道我是否误解了你的问题。
target = Y ~ X1 + X2 + X3
now = substitute(target)
> paste0(now, '.best')
[1] "target.best"
您可以使用now
访问eval()
的实际值:
> eval(now)
Y ~ X1 + X2 + X3