可以在R中获得F#的函数应用程序"|>"运算符吗?

nxs*_*der 4 f# r operator-overloading

可能重复:
R流水线功能

我发现与F#相比,R语法非常笨重:

在R - 而不是:

plot(exp(cumsum(returns)))
Run Code Online (Sandbox Code Playgroud)

我很想做

returns |> cumsum |> exp |> plot
Run Code Online (Sandbox Code Playgroud)

有没有办法在R中重载操作符以达到类似的效果?

谢谢

bap*_*ste 16

当然,为什么不,

`%|>%` = function(x, y) y(x)
1:10 %|>% cumsum %|>% plot
Run Code Online (Sandbox Code Playgroud)

  • 虽然小心翼翼,但我的直觉是它不值得推荐 (4认同)

42-*_*42- 5

Reduce帮助页面被盗:

Funcall <- function(f, ...) f(...)
Reduce(Funcall, list(plot, exp, cumsum), 1:10, right = TRUE)
Run Code Online (Sandbox Code Playgroud)