Re: a little more complex list operation
- To: mathgroup at smc.vnet.net
- Subject: [mg40248] Re: [mg40237] a little more complex list operation
- From: Sseziwa Mukasa <mukasa at jeol.com>
- Date: Fri, 28 Mar 2003 04:28:29 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
On Thursday, March 27, 2003, at 06:49 AM, Nathan Moore wrote: > Thanks very much for all the previous replies. Another simple > question - > though I guess this will require more complex syntax. Suppose I have > the > list, > > data = {{x1,y1},{x2,y2},{x3,y3}} > > and I want to produce the result (for fitting/plotting) > > data2 = {{f[x1],g[y1]},{f[x2],g[y2]},{f[x3],g[y3]}} > > I assume that if there was only one transform I wanted to apply, f[x], > then I could say > data2 = f[data] No if you wanted data2 = {{f[x1],f[y1]},{f[x2],f[y2]},{f[x3],f[y3]}} you could do Map[f, data, {Depth[data] - 1}] there are other options. f[data] is f[{{x1,y1},{x2,y2},{x3,y3}}] > but how about this more complicated transform with functions f and g? > It's not really more complicated, multiplication is a function too and your last request was to map multiplication across a list. In general in Mathematica if you wish to perform an operation on a list you should first write the operation on each element, then use Map, Apply et. al. to operate on the list. So the general operation on an element can be expressed as h[{x_,y_}]:={f[x],g[y]} Then we use Map h/@data Regards, Ssezi