Re: Partition a list into sublists of unequal size

• To: mathgroup at smc.vnet.net
• Subject: [mg83932] Re: Partition a list into sublists of unequal size
• From: dh <dh at metrohm.ch>
• Date: Wed, 5 Dec 2007 07:03:49 -0500 (EST)
• References: <fj37cv\$hq0\$1@smc.vnet.net>

```
Hi Anthony,

here is an example:

pos={1,4,7,8,10,15};

dat=Range[pos[[-1]]];

FoldList[(Print["ind=",{#1,#2}];Take[dat,{#1[[-1]]+1,#2}])&,{0},pos]

hope this helps, Daniel

antf wrote:

> Hello,

>

> I have a list that looks like the following:

>

> list={1,0,0,1,0,0,1,1,0,1,0,0,0,0,1,0}

>

> I then find the positions of the 1s in the list:

>

> positions = Flatten@Position[list,1]

>

> {1,4,7,8,10,15}

>

> I then want to partition a third list into sublists so that the first

> sublist is from index 1;;1, the second sublist is from index 2;;4, the

> third sublist is from index 5;;7, the fourth sublist is just element

> 8, etc.

>

> Currently, I use Partition on the positions sublist with overlap as

> in:

>

> Partition[Join[{1},positions],2,1]

>

> {{1,1},{1,4},{4,7},{7,8},{8,10},{10,15}}

>

> I then use this list to partition the target list by Mapping Take to

> each element of this list and adjusting the first index appropriately.

>

> I am sure there must be a simpler way to do this.  Can anyone tell me

> how to do this operation?

>

> Thanks,

> Anthony

>

```

• Prev by Date: Re: Partition a list into sublists of unequal size
• Next by Date: Re: ToolTips in SlideShow: Doesn't work in FullScreen?
• Previous by thread: Re: Partition a list into sublists of unequal size
• Next by thread: Re: Partition a list into sublists of unequal size