Re: expanding a list
- To: mathgroup at smc.vnet.net
- Subject: [mg42599] Re: expanding a list
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Fri, 18 Jul 2003 05:24:55 -0400 (EDT)
- Organization: Universitaet Leipzig
- References: <bf5ksa$mj0$1@smc.vnet.net>
- Reply-to: kuska at informatik.uni-leipzig.de
- Sender: owner-wri-mathgroup at wolfram.com
Hi,
Flatten[Table[#[[1]], {#[[2]]}] & /@ Transpose[{plist, flist}]]
or
Flatten[Table[#1, {#2}] & @@@ Transpose[{plist, flist}]]
Regards
Jens
Alan Kelly wrote:
>
> Hi all,
> I believe that this is a rather elementary question, but I am not
> aware of a simple, elegant and efficient solution. I have searched
> the MathGroup archive, but with no success.
>
> I have two lists - both of the same length. The first contains a
> list of probabilities. For example, suppose the list length is 4
> (although in practice it would be much longer) and is of the
> following form:
> plist = {0.252, 0.252, 0.257, 0.235}.
> The second contains a list of integers:
> flist = {7,5,6,4}.
> I wish to take the first element of plist and replicate that value
> using the first element of flist. Similarly for the remaining
> elements.
> I should finish with a list of length 7+5+6+4 or 22.
> Any suggestion please.
> Many thanks,
> Alan Kelly
> Trinity College Dublin