微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

嵌套函数缺少参数 - magrittr 错误

如何解决嵌套函数缺少参数 - magrittr 错误

这可能违背 magrittr (ref1,ref2) 的哲学

仍然,magrittr 在最简单的嵌套函数中抛出错误

x <- c(3,1,2,3) %>%
  sort(unique())
## Error in is.factor(x) : argument "x" is missing,with no default
x <- c(3,3) %>%
  sort(unique(.))
## Error in sort(.,unique(.)) : 
##   'decreasing' must be a length-1 logical vector.
## Did you intend to set 'partial'?

谁能解释这种行为或如何避免它?

解决方法

我想我可以提供部分答案(关于如何避免这种行为)。

只需将嵌套的函数调用括在大括号中,如下所示:

c(3,1,2,3) %>% {sort(unique(.),decreasing = FALSE)}
# [1] 1 2 3

至于为什么会这样,在 ?magrittr::%>%\ 中有解释。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。