Julia dplyr like%>;%朱莉娅的语法

Julia dplyr like%>;%朱莉娅的语法,julia,dplyr,Julia,Dplyr,在R中(多亏了magrittr/dplyr),您现在可以调用不带括号的函数,但您可以使用管道代替它们 这意味着不进行编码,而是: > as.character((sqrt(12)^2) > as.Date("2014-01-01") 您也可以这样做: > 12 %>% sqrt %>% .^2 %>% as.character > "2014-01-01" %>% as.Date R广泛使用它来编辑数据帧。除了dataframes之外,我觉得

在R中(多亏了
magrittr
/
dplyr
),您现在可以调用不带括号的函数,但您可以使用管道代替它们

这意味着不进行编码,而是:

> as.character((sqrt(12)^2)
> as.Date("2014-01-01")
您也可以这样做:

> 12 %>% sqrt %>% .^2 %>% as.character
> "2014-01-01" %>% as.Date 
R广泛使用它来编辑数据帧。除了dataframes之外,我觉得这种语法对于创建函数脚本来说是非常可读和强大的

julia语言是否支持类似的东西

是的,有两种意义

所以首先是
|>
,例如

12 |> sqrt |> x->x^2 |> string  # 11.999999999999998
using Dates  # needed in 0.3, baked in to 0.4
"2014-01-1" |> d->Date(d,"yyyy-mm-dd") |> year |> iseven  # true
不过,我不会说它是非常地道的Julia(或R,它是使用
dplyr
对数据帧进行操作的例外)。不过现在你可以用它做很多漂亮的事情

特别是对于数据帧,它是一个WIP,但有与的组合,它允许您执行诸如
dplyr
LINQ
之类的操作,例如(取自其自述文件):

x_thread = @> begin
    df
    @transform(y = 10 * :x)
    @where(:a .> 2)
    @by(:b, meanX = mean(:x), meanY = mean(:y))
    @orderby(:meanX)
    @select(:meanX, :meanY, var = :b)
end