Hi @pdeffebach, I changed it to the following:
transform!(
df_cons,
[:rp, :asset, :time_block] =>
ByRow(
(rp, a, time_block) -> begin
df = @view df_flows[(df_flows.rp.==rp).&&(df_flows.to.==a), :]
coalesce(
sum(df.flow .* length.(Ref(time_block) .∩ df.time_block) * 3.14rp),
AffExpr(0.0),
)
end,
) => :incoming_term,
)
But there are no improvements. The code is wrapped in a function.