group data by variables and calculate statistics on other columns #python
step2=step.groupby(['OLI', 'STEPCODE'])
counts = step2.size().to_frame(name='counts')
(counts
.join(step2.agg({'ITERATION': 'mean'}).rename(columns={'ITERATION': 'col3_mean'}))
.join(gb.agg({'col4': 'median'}).rename(columns={'col4': 'col4_median'}))
.join(gb.agg({'col4': 'min'}).rename(columns={'col4': 'col4_min'}))
.reset_index()
)