Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2002
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2002

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

Search the Archive

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

  • To: mathgroup at smc.vnet.net
  • Subject: [mg37083] Re: Operating on every k-th element of list?
  • From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
  • Date: Wed, 9 Oct 2002 05:25:28 -0400 (EDT)
  • Organization: Universitaet Leipzig
  • References: <anufl8$ap2$1@smc.vnet.net>
  • Reply-to: kuska at informatik.uni-leipzig.de
  • Sender: owner-wri-mathgroup at wolfram.com

Hi,

something like:

With[{k=3},
Flatten[
  {#[[2]] + c*#[[1]], #[[3]]} & /@ 
   Partition[lst, k, k, {1, 1}],
  1]
]

??

Regards
  Jens

AES wrote:
> 
> 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?