<br><br><div class="gmail_quote">On Thu, Apr 25, 2013 at 1:51 PM,  <span dir="ltr"><<a href="mailto:josef.pktd@gmail.com" target="_blank">josef.pktd@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Thu, Apr 25, 2013 at 3:40 PM, Robert Kern <<a href="mailto:robert.kern@gmail.com">robert.kern@gmail.com</a>> wrote:<br>
> On Thu, Apr 25, 2013 at 8:21 PM, Andrew Giessel<br>
> <<a href="mailto:andrew_giessel@hms.harvard.edu">andrew_giessel@hms.harvard.edu</a>> wrote:<br>
>> I respect this opinion.  However (and maybe this is legacy), while reading<br>
>> through the numeric.py source file, I was surprised at how short many of the<br>
>> functions are, generally.  Functions like ones() and zeros() are pretty<br>
>> simple wrappers which call empty() and then copy over values.<br>
><br>
> Many of these are short, but they do tend to do at least two things<br>
> that someone would otherwise have to do. This really isn't the case<br>
> for iteraxis() and rollaxis(). One can use rollaxis() pretty much<br>
> everywhere you would use iteraxis(), but not vice-versa.<br>
><br>
>> FWIW, I had used numpy for over two years before realizing that the default<br>
>> behavior of iterating on a numpy array was to return slices over the first<br>
>> axis (although, this makes sense because it makes a 1d array like a list),<br>
>> and I think it is generally left out of any tutorials or guides.<br>
<br>
</div>That definitely sounds like a documentation problem.<br>
I'm using often that it's a python iterator in the first dimension,<br>
and can be used with *args and tuple unpacking.<br>
(I didn't need it with anything else than axis=0 or axis=-1 for matplotlib IIRC)<br>
<br>
I never used rollaxis, but I have seen it a lot when I was still<br>
reading the nipy source.<br>
<br>
In general, I think that there are already too many aliases in numpy,<br>
or function whether it's not really clear if they are aliases or<br>
something slightly different.<br>
<br>
It took me more than a year to remember what `expand_dims` is called,<br>
(I always tried, add_axis) until I bookmarked it for a while.<br>
<span class="HOEnZb"><font color="#888888"><br></font></span></blockquote><div><br>After thinking about it, I'm in favor of this small function. Rollaxis takes a bit of thought and document reading to figure out how to use it, whereas this function covers a common use with an easy to understand API. I'm not completely satisfied with the name, it isn't as memorable as I'd like, but that is a small quibble.<br>
<br>Chuck <br></div><br></div>