小编War*_*art的帖子

如何访问分配给函数内函数结果的变量名称?

例如,假设我希望能够定义一个函数,该函数返回与第一个参数连接的赋值变量的名称:

a <- add_str("b")
a
# "ab"
Run Code Online (Sandbox Code Playgroud)

上面示例中的函数看起来像这样:

add_str <- function(x) {
  arg0 <- as.list(match.call())[[1]]
  return(paste0(arg0, x))
}
Run Code Online (Sandbox Code Playgroud)

但是,函数的arg0行被一行替换,该行将获得被赋值变量的名称("a")而不是函数的名称.

我已经尝试过使用match.call和sys.call,但我无法让它工作.这里的想法是在变量和函数结果上调用赋值运算符,因此应该是函数调用的父调用.

r variable-assignment operator-keyword

7
推荐指数
2
解决办法
356
查看次数

标签 统计

operator-keyword ×1

r ×1

variable-assignment ×1