首页 > 解决方案 > imap:.y 未找到

问题描述

这真的很奇怪。

foo <- list(a=2, b=3)
imap(foo, ~ print(.y))

这有效:

[1] "a"
[1] "b"
$a
[1] "a"

$b
[1] "b"

这也有效:

imap(foo, ~ paste("ID", .y))

结果:

$a
[1] "ID a"

$b
[1] "ID b"

但这不会:

imap(foo, ~ bar <- .y)

结果:

Error in as_mapper(.f, ...) : object '.y' not found

有没有搞错?我究竟做错了什么?

标签: rtidyversepurrr

解决方案


操作顺序。~优先于<-。使用括号。

imap(foo, ~ (bar <- .y))

推荐阅读