Re: Transforming/expanding a list
- To: mathgroup at smc.vnet.net
- Subject: [mg127977] Re: Transforming/expanding a list
- From: Adriano Pascoletti <adriano.pascoletti at uniud.it>
- Date: Fri, 7 Sep 2012 04:54:09 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- References: <20120906081415.0241D684C@smc.vnet.net>
In[1]:= (If[#1 =!= NULL, save = #1, save] & ) /@ {x1, NULL, NULL, x2, NULL, NULL, NULL, NULL, x3, NULL, NULL, x4, x5, NULL} Out[1]= {x1, x1, x1, x2, x2, x2, x2, x2, x3, x3, x3, x4, x5, x5} Adriano Pascoletti 2012/9/6 Mark Coleman <markspcoleman at gmail.com> > I'm working on some Mathematica code that will help transform a large set > of lists drawn from my company's legacy database systems. A typical row of > the raw data looks like > > {x1,NULL,NULL,x2,NULL,NULL,NULL,NULL,x3,NULL,NULL,x4,x5,NULL} ... > > The lists are sequences of real numbers, separating some some number of > Strings which for convenicence sake we call "NULL" (as opposed to a proper > Mathematica Null). The goal is to create a new list where each NULL is > replaced by the real number that most recently proceeds it (note that any > number of NULLs may occur before or after any real values). I would like > the code to return > > {x1,x1,x1,x2,x2,x2,x2,x2,x3,x3,x3,x4,x5,x5} > > > Thanks > > Mark > >
- References:
- Transforming/expanding a list
- From: Mark Coleman <markspcoleman@gmail.com>
- Transforming/expanding a list