【发布时间】:2021-05-26 22:55:47
【问题描述】:
我想轻松地将多个函数应用于 Julia 数据框中的单个列。这是 Julia 学院 DataFrames.jl 课程的笔记本 5 中的一个简单示例。
Bogumil 向我们展示了通过执行以下操作轻松计算 jumps 列的平均值:
combine(df, :jumps => mean)
| jumps_mean | |
|---|---|
| Float64 | |
| 1 | 2.7186 |
但是如果我想对jumps 应用多个函数以获取多个汇总统计信息怎么办?到目前为止,我可以使以下工作:
combine(df, :jumps => (x -> [(mean(x), std(x), minimum(x), maximum(x))]) => [:mean, :std, :min, :max])
| mean | std | max | min | |
|---|---|---|---|---|
| Float64 | Float64 | Int64 | Int64 | |
| 1 | 2.7186 | 0.875671 | 2 | 11 |
是否有更简洁的语法来执行此操作,而无需将函数返回包装在 [ ] 中或专门使用匿名函数?
例如,我想做:
combine(df, :jumps => (mean, std, minimum, maximum))
【问题讨论】: