5.6 Data Summaries

Similar to the combine DataFrames.jl function (Section 4.8), DataFramesMeta.jl has a @combine macro.

  1. @combine leftjoined :mean_grade_2020 = mean(:grade_2020)
mean_grade_2020
4.625

@combine also supports multiple operations inside a begin ... end statement:

  1. @combine leftjoined begin
  2. :mean_grade_2020 = mean(:grade_2020)
  3. :mean_grade_2021 = mean(:grade_2021)
  4. end
mean_grade_2020mean_grade_2021
4.6256.375

Most of the time we would use @combine in a grouped dataframe by pairing it with groupby:

  1. gdf = groupby(leftjoined, :name)
  2. @combine gdf begin
  3. :mean_grade_2020 = mean(:grade_2020)
  4. :mean_grade_2021 = mean(:grade_2021)
  5. end
namemean_grade_2020mean_grade_2021
Sally1.09.5
Hank4.06.0
Bob5.05.0
Alice8.55.0

5.6 Data Summaries - 图1 Support this project
CC BY-NC-SA 4.0 Jose Storopoli, Rik Huijzer, Lazaro Alonso