如何获得分配给另一个变量的变量名?

时间:2019-10-18 05:02:50

标签: r

示例代码:

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所指的是灵活的,它可以是target1target2,依此类推。我想要的是通过不使用变量名now / target1获得target2所指的内容。例如,如果使用now = target2,则预期答案应该只能通过使用变量名"target2"来获得now,而不应包括target2

1 个答案:

答案 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
相关问题