这基本上是与 使用%>%管道在dplyr中链接算术运算符 相同的问题,但更新为新的(R 4.1)管道操作符
希望答案足够通用,适用于任何运算符或内置函数,这些运算符或内置函数通常无法与本地R管道(我的版本是R 4.2.2)良好地配合使用。
答案https://dev59.com/pFEG5IYBdhLWcg3wVqz9#72086492提供了许多有关
|>
。
如何使用 R 原生管道 |>
链接算术运算符? 使用 dplyr/magrittr,您可以使用反引号进行算术运算,但在内置的 R 管道运算符中无效。以下是一个简单的示例:R.version$version.string
# [1] "R version 4.2.2 (2022-10-31 ucrt)"
x <- 2
# With dplyr/magrittr, you can use backticks for arithmetic operators
x %>% `+`(2)
# [1] 4
# But that doesn't work with the inbuilt R pipe operator
x |> `+`(2)
# Error: function '+' not supported in RHS call of a pipe
希望答案足够通用,适用于任何运算符或内置函数,这些运算符或内置函数通常无法与本地R管道(我的版本是R 4.2.2)良好地配合使用。
答案https://dev59.com/pFEG5IYBdhLWcg3wVqz9#72086492提供了许多有关
%>%
和|>
之间差异的有用信息,但没有一个完全回答了我的问题。
x |> base::\
+`(2)`了吗? - jay.sfbase::
很重要。 - TarJaex |> (\
+`)(2)` 也应该可以工作。 - Martin Gal