3

隐性编程是否也称为无点样式 - R中的一个选项?

4

1 回答 1

2

检查magrittr包,因为它似乎最接近您的要求。维基百科引用了一个例子:

例如,应用语言中的一系列操作,如下所示:

def example(x):
   y = foo(x)
   z = bar(y)
   w = baz(z)
   return w

...以无点风格编写为一系列函数的组合,没有参数:

def example: baz bar foo

在 R 中,magrittr它可以写成

x %>% foo %>% bar %>% baz

where%>%运算符用于组成一个函数链,以便将前一个函数的输出作为后续函数的第一个参数传递。请参阅magrittr小插图了解更多信息。

可以定义函数

# explicitly
example <- function(x) x %>% foo %>% bar %>% baz

# or simply (as @bergant noticed)
example <- . %>% foo %>% bar %>% baz
于 2015-05-08T11:20:02.237 回答