Re: Replacing 1 to many in a list
- To: mathgroup at smc.vnet.net
- Subject: [mg29267] Re: Replacing 1 to many in a list
- From: "Allan Hayes" <hay at haystack.demon.co.uk>
- Date: Sat, 9 Jun 2001 03:08:55 -0400 (EDT)
- References: <9fq1sf$qdl$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Chris, vector={6,6,5,4,4,4,Null,6,Null,44,Null,4,4,5}; k=1;vector/.Null:>x[k++] {6,6,5,4,4,4,x[1],6,x[2],44,x[3],4,4,5} -- Allan --------------------- Allan Hayes Mathematica Training and Consulting Leicester UK www.haystack.demon.co.uk hay at haystack.demon.co.uk Voice: +44 (0)116 271 4198 Fax: +44 (0)870 164 0565 "Chris Johnson" <cjohnson at shell.faradic.net> wrote in message news:9fq1sf$qdl$1 at smc.vnet.net... > I think this is probably simple, but I can't find a natural way to do it > yet. I hope someone out there can help. I have a vector numbers with > some Null's scattered throughout. The number and location of missing data > varies. For example, > > vector = {6, 6, 5, 4, 4, 4, Null, 6, Null, 44, Null, 4, 4, 5} > > Position[vector, Null] > > {{7}, {9}, {11}} > > Now "/." will let me replace all instances of Null with the same variable > but I want to replace each instance with a different variable. I would > prefer to use x[1], x[2] and x[3], but if it were easier, then x[7], x[9] > and x[11] would be OK also. > > The prefered end result would be: > > {6, 6, 5, 4, 4, 4, x[1], 6, x[2], 44, x[3], 4, 4, 5} > > Any suggestions? > > Thanks in advance, > Chris > >