Dynamically split DataFrame into bins

This might be a bit hacky, but it gets the job done (I think):

using DataFrames

df = DataFrame(a = rand(100))

df.group = repeat(1:5, inner=20)

julia> groupby(df, :group)
GroupedDataFrame with 5 groups based on key: group
First Group (20 rows): group = 1
│ Row │ a        │ group │
│     │ Float64  │ Int64 │
├─────┼──────────┼───────┤
│ 1   │ 0.362288 │ 1     │
│ 2   │ 0.461975 │ 1     │
│ 3   │ 0.179701 │ 1     │
│ 4   │ 0.992212 │ 1     │
│ 5   │ 0.428374 │ 1     │
│ 6   │ 0.967794 │ 1     │
⋮
│ 14  │ 0.24395  │ 1     │
│ 15  │ 0.812229 │ 1     │
│ 16  │ 0.909791 │ 1     │
│ 17  │ 0.151844 │ 1     │
│ 18  │ 0.33243  │ 1     │
│ 19  │ 0.922681 │ 1     │
│ 20  │ 0.818121 │ 1     │
⋮
Last Group (20 rows): group = 5
│ Row │ a          │ group │
│     │ Float64    │ Int64 │
├─────┼────────────┼───────┤
│ 1   │ 0.432551   │ 5     │
│ 2   │ 0.639232   │ 5     │
│ 3   │ 0.00861674 │ 5     │
│ 4   │ 0.703537   │ 5     │
│ 5   │ 0.0616792  │ 5     │
│ 6   │ 0.615816   │ 5     │
⋮
│ 14  │ 0.352876   │ 5     │
│ 15  │ 0.920175   │ 5     │
│ 16  │ 0.388247   │ 5     │
│ 17  │ 0.738989   │ 5     │
│ 18  │ 0.473766   │ 5     │
│ 19  │ 0.731183   │ 5     │
│ 20  │ 0.613228   │ 5     │
4 Likes