May this would be easier list = MapThread[Prepend, {xyRep, uRep}]; #1 == a1 + a2 #2 + a3 #3 & @@@ list (* {u1 == a1 + a2 x1 + a3 y1, u2 == a1 + a2 x2 + a3 y2, u3 == a1 + a2 x3 + a3 y3} *)