将多个函数应用于 Julia DataFrames.jl 中的单个列

jsi*_*nai 5 dataframe julia

我想轻松地将多个函数应用于 Julia 数据框中的单个列。这是 Julia Academy 上 DataFrames.jl 课程笔记本 5 中的一个简单示例。

Bogumil 向我们展示了jumps通过执行以下操作轻松计算列的平均值:

combine(df, :jumps => mean)
Run Code Online (Sandbox Code Playgroud)
jumps_mean
Float64
1 2.7186

但是如果我想应用多个函数jumps来获得多个汇总统计呢?到目前为止,我可以使以下内容起作用:

combine(df, :jumps => (x -> [(mean(x), std(x), minimum(x), maximum(x))]) => [:mean, :std, :min, :max])
Run Code Online (Sandbox Code Playgroud)
意思 标准 最大限度 分钟
Float64 Float64 64位 64位
1 2.7186 0.875671 2 11

是否有更简洁的语法来执行此操作,而无需将函数返回包装起来[ ]或专门使用匿名函数?

例如,我想做:

combine(df, :jumps => (mean, std, minimum, maximum))
Run Code Online (Sandbox Code Playgroud)

Bog*_*ski 5

做:

combine(df, :jumps .=> [mean, std, minimum, maximum])
Run Code Online (Sandbox Code Playgroud)

另请参阅Julia 中分组列的多个汇总统计信息以获取一些更高级的示例。