Re: Operating on every k-th element of list?

• To: mathgroup at smc.vnet.net
• Subject: [mg37084] Re: Operating on every k-th element of list?
• From: "Borut L" <gollum at email.si>
• Date: Wed, 9 Oct 2002 05:25:29 -0400 (EDT)
• References: <anufl8\$ap2\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```Hello,

Consider the following approach, whish uses the MapAt command, that is Map
with 'mapping-position' control.

dummyFun={#,trueFun@#}&

list={a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p}

spec=Partition[Range[3,Length[list],3],1]

MapAt[dummyFun,list,spec]

%//Flatten

Hope that is what you want,

Borut

"AES" <siegman at stanford.edu> wrote in message
news:anufl8\$ap2\$1 at smc.vnet.net...
| I want to apply a function to every  k-th  element of a long list and
| add the result to the  k+1  element.
|
| [Actually  k = 3  and I just want to multiply  myList[[k]]  by a
| constant (independent of k)  and add the result to  myList[[k+1]]  for
| every value of  k  that's divisible by 3.]
|
| Is there a way to do this -- or in general to get at every  k-th
| element of a list -- that's faster and more elegant than writing a brute
| force  Do[]  loop or using  Mod[]  operators, and that will take
| advantage of native List operators,  but still not be too recondite?
|
| I've been thinking about multiplying a copy of  myList  by a "mask list"
| {0,0,1,0,0,1,..} to generate a "masked copy" and approaches like that.
| Better ways???
|

```

• Prev by Date: Re: Operating on every k-th element of list?
• Next by Date: Re: Operating on every k-th element of list?
• Previous by thread: Re: Operating on every k-th element of list?
• Next by thread: Re: Operating on every k-th element of list?