Let's say I have some data:
data={{a1,b1},{a2,b2},{a3,b3},{a4,b4},...} and I would like to apply the function:
f1[x_]=x*5 to every a_i element.
How can I do this?
The best solution I've found so far is to do:
MapAt[f1, data, {{1, 1}, {2, 1}, {3, 1}, {4, 1}...}] Up to the length of my data, but I'm sure there's a more efficient solution for this.
MapAt[f1, data, {All, 1}]? $\endgroup$Map[Apply[{f[#1], ##2} &], data], if you insist... but J.M.'s approach is best. $\endgroup$Transpose@{f1[#1], #2} & @@ Transpose@dataIf yourf1isListable(and yours is ) that can give you significant speed increase. $\endgroup${f1@#, #2} & @@@ data$\endgroup$#1and#are equivalent. $\endgroup$