我正在构建一个函数,并且想在管道(%>%
)之后检索变量名称。有可能吗?
当我使用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
.
答案 0 :(得分:2)
如果使用imap
,则会在.y
中获得名称,而在.x
中得到主变量(或仅.
)。
例如
c(N1='A',N2='B') %>% imap( ~ .y )