From: Bill B. <wb...@gm...> - 2006-09-15 00:53:01
|
Iteration over axis 0 is built-in, so you can already do (vectorFunc(row) for row in array) And you can use transpose() to make it so the axis you want to iterate over is axis 0. (vectorFunc(col) for col in array.transpose(1,0)) Or just use the .T attribute (vectorFunc(col) for col in array.T) So it seems kind of a toss-up whether it's worth adding a specific API to do that. The implementation would probably just return the transpose with the given axis in the zero slot. Something like: def axisiter(arr, i): ax = [i] + range(arr.ndim) del ax[i+1] return arr.transpose(ax) --bb On 9/15/06, Brendan Simons <bre...@ya...> wrote: > Hi all, > > Just wondering if there was an arbitrary axis iterator in numpy, or > if not, if there's demand for one. What I'm looking for is something > which would allow me to do something like (vectorFunc(column) for > column in array.axisIter(1) ) without a bunch of for loops and slicing. > > Thoughts? > Brendan |