关于在R程序中的管道运算符中添加参数,它是如何工作的?在这种情况下,假设我想要返回与其初始值完全相同的输出,即1,2,3,4,5。假设代码如下:
a <- as.vector(c(1:5)) %>%
sample() %>%
sort()
为了将其返回初始顺序,我需要在sort
函数中指定一个参数。如何添加该参数?
a <- as.vector(c(1:5)) %>%
sample() %>%
sort(decreasing = F)
答案 0 :(得分:0)
来自magrittr
管道运营商的文档:
将
lhs
作为rhs
电话中的第一个参数
%>%
调用中需要多个参数时rhs
的默认行为是将lhs作为第一个参数,即x %>% f(y)
等同于f(x, y)
。
所以基本上你不必在右侧指定函数调用的第一个参数。
一个简单的例子:
library(magrittr)
set.seed(1)
sample(1:5) %>% sort(decreasing = TRUE) %>% print() %>% sort(decreasing = FALSE)
# [1] 2 5 4 3 1
# [1] 5 4 3 2 1
# [1] 1 2 3 4 5