MathGroup Archive 2000

[Date Index] [Thread Index] [Author Index]

Search the Archive

RE: What makes things Listable?


I think you want to use the Apply function. Applying f to a list {x,y,z} is
the same as f[x,y,z]. Here is an example.

f[x_, y_, z_] := Sqrt[x^2 + y^2 + z^2]

f @@ {x, y, z}
Sqrt[x^2 + y^2 + z^2]

This is most convenient when you want to apply f to a list of vectors which
contain the arguments for f:

f @@ # & /@ {{x, y, z}, {p, q, r}, {1, 2, 3}}
{Sqrt[x^2 + y^2 + z^2], Sqrt[p^2 + q^2 + r^2], Sqrt[14]}

David Park
djmp at

> From: Chris Johnson [mailto:cjohnson at]
To: mathgroup at
> I'm using the "Finance Essentials" package and want to use the Value
> command over a list of bonds.  For those not familiar with the package,
> there is a structure called Bonds which defines the coupon, maturity,
> etc. for a bond.  The Value command takes three arguements, Bond,
> SettlementDate, YieldToMaturity and returns a price.
> Having vectors of Bonds, Dates, and Yields, I want to create a vector
> of prices.  My first guess was to try the following command:
> Value[Transpose[{bondlist,datelist,yields}]]
> This returned the result
> Value[{{bond[1],valdate[1],yield[1]},...}]
> My next step was to use Map[Value,Transpose[...]] which returned a list
> like {Value[{bond,valdate,ytm}],...} where the parameters for Value are
> surrounded by curly braces.  Value wouldn't evaluate over parameters in
> this form.
> The solution I found for now is to create my own fuction
> cjValueList[{x_,y_,z_}]:=Value[x,y,z]
> and then mapping cjValueList provides the table I seek.  I have run into
> this general problem of wanting to get rid of the outer level of curly
> braces before, and wonder if there is a more general solution then this
> hack redefinition of the function?
> Thanks,
> Chris Johnson

  • Prev by Date: RE: Relative Font Size in Plots / Graphics`
  • Next by Date: Re: Re: embedding Mathematica equations in MS Word part 2
  • Previous by thread: Re: What makes things Listable?
  • Next by thread: from Visual Basic To Mathematica through JLink: examples and problems