This is very similar to kglr's first solution but picks the relevant quantities a bit more explicitly: l2 = BlockMap[{#[[2, 3]] - #[[1, 3]], #[[1, 4]], #[[2, 4]]} &, l1, 2, 1] > {{2, c, k}, {7, k, m}, {-11, m, y}} With a parameter to change the symbolic column quickly: l2 = With[{col = 3}, BlockMap[{#[[2,col]] - #[[1,col]], #[[1,col+1]], #[[2,col+1]]} &, l1, 2, 1]] > {{2, c, k}, {7, k, m}, {-11, m, y}}