RE: Thread? Through? Operate?
- To: mathgroup at smc.vnet.net
- Subject: [mg32407] RE: [mg32388] Thread? Through? Operate?
- From: "David Park" <djmp at earthlink.net>
- Date: Sat, 19 Jan 2002 01:16:45 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Johannes, funcs = {f1, f2, f3, f4}; args = {x1, x2, x3, x4}; The following forms are only marginally, if at all, better than you have. MapThread[#1[#2] &, {funcs, args}] {f1[x1], f2[x2], f3[x3], f4[x4]} Inner[#1[#2] &, funcs, args, List] {f1[x1], f2[x2], f3[x3], f4[x4]} But, if you have to do a lot of it you could define your own function to shorten it. tt[funcs_, args_] := Inner[#1[#2] &, funcs, args, List] funcs~tt~args {f1[x1], f2[x2], f3[x3], f4[x4]} David Park djmp at earthlink.net http://home.earthlink.net/~djmp/ > From: Johannes Ludsteck To: mathgroup at smc.vnet.net > [mailto:johannes.ludsteck at wiwi.uni-regensburg.de] > > Dear MathGroup members, > I have a list of n unnamed functions > > f = {expr1 &, expr2 &,... ,exprn &} > (each function has exactly one arguement. > and a list of n arguments. > > arg = {arg1, arg2,... ,argn} > > I simply want to apply each function expri & > to the respective argument argi in order > to obtain the list of function values fi. > Is there no more elegant way than the following one? > > Map[#[[1]][#[[2]]]&, Transpose[{f,arg}] > > Thanks, > Johannes > > <><><><><><><><><><><><><><><><><><> > Johannes Ludsteck > Institut fuer Volkswirtschaftslehre > Lehrstuhl Prof. Dr. Moeller > Universitaet Regensburg > Universitaetsstrasse 31 > 93053 Regensburg > Tel +49/0941/943-2741 >