Re: Map[] and multiple args function
- To: mathgroup at smc.vnet.net
- Subject: [mg96277] Re: Map[] and multiple args function
- From: dh <dh at metrohm.com>
- Date: Tue, 10 Feb 2009 05:56:17 -0500 (EST)
- References: <gmp0ps$c0a$1@smc.vnet.net>
Hi,
try:
{{1, 2, 3}, {4, 5, 6}} /. List -> Sequence
and you will see that it does not what you want. You may use Thread or
MapThread to do what you want:
Thread[foo[{1, 2, 3}, {4, 5, 6}]]
MapThread[foo, {{1, 2, 3}, {4, 5, 6}}]
hope this helps, Daniel
sagrailo at gmail.com wrote:
> I know this has to be FAQ, but I'm just not able to find an answer
> anywhere, so - here it goes: I have a multiple-arguments function,
> say something like:
> Foo[x_, y_, z_] := x + 2*y + 3*z
> Now, I want to call this function number of times, over different sets
> of arguments, and then to sum results. I thought about storing
> argument triplets into some kind of list, and then employing sequence
> of Map[] and Apply[] to get the job done. After number of trials and
> errors, I came up with following piece of code doing the thing:
> Plus @@ Foo /@ {{1, 2, 3}, {4, 5, 6}} /. List -> Sequence
> but I even don't fully understand what's going here, and also I'm
> wondering is there a "better" way to accomplish this. So - any
> suggestion?
>
> Thanks.
>