Re: Apply or Map on some parts of lists - help
- To: mathgroup at smc.vnet.net
- Subject: [mg115622] Re: Apply or Map on some parts of lists - help
- From: Peter Pein <petsie at dordos.net>
- Date: Sun, 16 Jan 2011 05:56:07 -0500 (EST)
- References: <igrqdn$qot$1@smc.vnet.net>
On 15.01.2011 10:46, dragec wrote: > Dear, > I have > > List like: > > { {{TITLE1},{{x11,y11},{x12,y12},{x13,y13},{x14,y14}}}, > {{TITLE1},{{x21,y21},{x22,y22},{x23,y23},{x24,y24}}}, > {{TITLE1},{{x31,y31},{x32,y32},{x33,y33},{x34,y34}}} > } > > So, I would like to apply some function (eg. #/3.6&) to all y's. > Is there any elegant way to do this. > I Know that you know how to do this. :) > > THX > Least typing will be achieved by Replace[lst, {x_, y_} :> {x, f[y]}, {3}] Procedural programmers will probably prefer: Block[{result = lst}, result[[All, 2, All, 2]] = Map[f, lst[[All, 2, All, 2]], {2}]; result ] And I like the funny looking: Map[MapAt[Map[MapAt[f, #, 2] &, #] &, #, 2] &, lst] Cheers, Peter