概要
我正在阅读一篇关于dplyr的across函数的文章。在查看第一个使用示例时,我发现了我从未见过的运算符。我不知道它们是否是dplyr固有的还是来自其他包。无论哪种情况,我都不明白代码中它们的用法。
代码示例:
starwars |>
summarize(across(where(is.character), ~ length(unique(.x))))
结果是一个1 x 8的tibble。
我理解across的第一个参数,但第二个参数让我困惑。什么是
~length(unique(.x))
?代码中的".x"是什么意思?我知道length被应用到tibble中的每个字符向量上,但是"unique"函数对这段代码有什么作用?
我为解决这个问题尝试了什么?
我尝试使用谷歌搜索[R] ~运算符,但没有找到相关结果。我还尝试过rdrr.io、r-project.org和CRAN,但都没有解决。我还查看了tidyverse.org和purrr文档,因为看到其他人在使用相同语法时提到了purrr。
问题:
有人能帮我理解内部发生了什么吗?