MathGroup Archive 2003

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

Search the Archive

Re:expanding a list

  • To: mathgroup at smc.vnet.net
  • Subject: [mg42609] Re:[mg42593] expanding a list
  • From: Alan Kelly <Alan.Kelly at tcd.ie>
  • Date: Fri, 18 Jul 2003 05:25:02 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

My thanks to Mihajlo Vanevic and Bob Hanlon for answering my question 
(see below).  I asked for  an elegant and efficient solution and 
that's what I got!

Mihajlo suggested:

MapThread[Table[#1, {#2}] &, {plist, flist}]
or
Flatten@MapThread[Table[#1, {#2}] &, {plist, flist}]

and Bog suggested:
Flatten[Table[#[[1]], {#[[2]]}] & /@ Transpose[{plist, flist}]]

Again, many thanks to both.  Now all I have to do is understand how 
these actually work!!
Alan Kelly


My original question
_______________________________________________________________
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

+-------------------------------------------------------+
  Dr. Alan Kelly          E-mail akelly at mail.tcd.ie
  Biostatistician           Phone:  +353-1-608 1385 or 608 1087
		  Fax:      +353-1-403 1211 or 403 1212

 

Director of the Small Area Health Research Unit 

Department of Community Health & General Practice 

Trinity Center for Health Sciences
AMNCH
Tallaght Hospital
Dublin 24
Ireland 


  http://www.tcd.ie/Community_Health/SAHRU/index.html

Please note that electronic mail to, from or within the College, may be the
subject of a request under the Freedom of Information Act.

+--------------------------------------------------------+

My thanks to Mihajlo Vanevic and
<fontfamily><param>Geneva</param><smaller>Bob
Hanlon</smaller></fontfamily> for answering my question (see below).  I
asked for  an elegant and efficient solution and that's what I got!


Mihajlo suggested:


MapThread[Table[#1, {#2}] &, {plist, flist}]

or

Flatten@MapThread[Table[#1, {#2}] &, {plist, flist}]


and Bog suggested:

<fontfamily><param>Geneva</param><smaller>Flatten[Table[#[[1]],
{#[[2]]}] & /@ Transpose[{plist, flist}]]


</smaller></fontfamily>Again, many thanks to both.  Now all I have to
do is understand how these actually work!!

Alan Kelly



My original question

_______________________________________________________________

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

+-------------------------------------------------------+

 Dr. Alan Kelly          E-mail akelly at mail.tcd.ie                       

 Biostatistician           Phone:  +353-1-608 1385 or 608 1087

		  Fax:      +353-1-403 1211 or 403 1212                   

                                                        

                                                                                                                       

Director of the Small Area Health Research Unit                                                

Department of Community Health & General Practice                                                          

Trinity Center for Health Sciences

AMNCH

Tallaght Hospital

Dublin 24      

Ireland                                                                                   

 

 http://www.tcd.ie/Community_Health/SAHRU/index.html       


Please note that electronic mail to, from or within the College, may be the

subject of a request under the Freedom of Information Act.

   

+--------------------------------------------------------+



  • Prev by Date: Re: Basic Stat Question
  • Next by Date: Re: displaying a graphic without input
  • Previous by thread: RE: expanding a list
  • Next by thread: Mathematica 5.0 and ImageProcessing package