使用基本 R 管道创建表达式/调用

问题描述 投票:0回答:1

有没有办法做到以下几点

ex1 <- quote(iris)
ex2 <- quote(dplyr::filter(Species == "setosa" & Sepal.Width > 4))

substitute(x %>% y, list(x = ex1, y = ex2))
#> iris %>% filter(Species == "setosa" & Sepal.Width > 4)

使用基管代替 Magrittr 管?

substitute(x |> y, list(x = ex1, y = ex2))
#> Error: The pipe operator requires a function call as RHS
r pipe magrittr
1个回答
0
投票

错误消息在这里实际上很有帮助。对于基管,右侧始终需要括号。正在做

substitute(x |> y(), list(x = ex1, y = ex2))

就可以了。

© www.soinside.com 2019 - 2024. All rights reserved.