管道后引用

Quoting after pipe

我正在构建一个函数并希望在管道 (%>%) 之后检索变量名称。可能吗?
当我使用 enexpr 时,它给出点符号 (".")。我预期的答案是 "mpg"、"cyl" 等...

> f <- function(x) enexpr(x)
> mtcars$mpg %>% f()
.
> mtcars %>% map(~f(.))
$mpg
.
$cyl
.
$disp
.
$hp
.
$drat
.
$wt
.
$qsec
.
$vs
.
$am
.
$gear
.
$carb
.

如果你使用 imap,你会在 .y 中得到名称,在 .x 中得到主变量(或者只是 .)。

例如

c(N1='A',N2='B') %>% imap( ~ .y )