我希望能够在其他标准 R 函数(例如下面的 ISee
)的参数中调用一个函数(我的,下面的 fixed_fn
),并拥有那个“内部”函数可以访问周围的参数 - 这可能吗?目前,sys.frame
使我能够看到“collapse”和“sep”,而我特别想访问“dat”——我可以看到访问标题可能会导致循环。
fixed_fn <- function(dat, caption) {
paste(caption, ",and 'fixed' was given a",class(dat))
}
ISee <- function(caption) {
paste(caption, ls(envir=sys.frame(-1)))
}
fixed_fn(dat=data.frame(a=1:4), caption=ISee("I see"))
所需的输出,仅更改 ISee
而不是 fixed_fn
将是“我看到了 dat,并且 'fixed' 被赋予了一个 data.frame”(并不真正关心看到 'caption ' 那里)。在实际代码中,我想要 get
dat 的值而不仅仅是它的名称。理想情况下在基础 R 中,但如果唯一的方法是 tidyverse 依赖,那将是可能的。
非常感谢!