clean2 = aq.from(parsed_data2)
.derive({
date: d => op.parse_date(d['Time of Budge change']),
Before: d => op.parse_int(d.Before),
After: d => op.parse_int(d.After)
})
.orderby('Employer name', 'Campaign name', 'date')
.groupby('Employer name', 'Campaign name')
.rollup({
before_values: d => op.array_agg(d.Before),
after_values: d => op.array_agg(d.After)
})
.derive({
earliest_value: aq.escape(d => d.before_values.at(0)),
last_value: aq.escape(d => d.after_values.at(-1))
})
.derive({
difference_pre_post: d => d.last_value - d.earliest_value
})
.view()