Is a For loop always a no-no?
- To: mathgroup at smc.vnet.net
- Subject: [mg50312] Is a For loop always a no-no?
- From: "1.156" <rob at pio-vere.com>
- Date: Thu, 26 Aug 2004 06:51:10 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
I realize that many times some form of Mathematica built in array function will do the needed job. Here I have a matrix containing individual data traces in rows y[[i]]. I want to make matrix containing the corresponding derivative signals in rows yd[[i]]. I get this done using the following For loop. Matrix yd has been initialized (it wouldn't work with out it). For[i = 1, i < n, i++, yd[[i]] = Drop[RotateLeft[y[[i]]] - y[[i]], -1]]; I tried the obvious (to me): yd = Drop[RotateLeft[y] -y, -1]; But I get garbage. It seems the whole matrix has been flattened to a single list and the whole list is rotated --instead of doing it row by row as I need. Wizzards all: is there some slick way to do this without the For loop? If so, it's probably faster and sure would look better in the code. Suggestions appreciated as usual. Rob
- Follow-Ups:
- Re: Is a For loop always a no-no?
- From: DrBob <drbob@bigfoot.com>
- Re: Is a For loop always a no-no?