I think it’s best to work with subset rather than @subset for this.
julia> conditions = [:a => ByRow(==(1)), :b => ByRow(==(2))]
2-element Vector{Pair{Symbol, ByRow{Base.Fix2{typeof(==), Int64}}}}:
:a => ByRow{Base.Fix2{typeof(==), Int64}}(Base.Fix2{typeof(==), Int64}(==, 1))
:b => ByRow{Base.Fix2{typeof(==), Int64}}(Base.Fix2{typeof(==), Int64}(==, 2))
julia> function fun(df, conditions)
subset(df, conditions)
end;