![](https://secure.gravatar.com/avatar/8b1cdadd1804a128dced3531b89efc1d.jpg?s=120&d=mm&r=g)
On Tue, Jul 6, 2010 at 2:23 PM, Alan G Isaac <aisaac@american.edu> wrote:
On 7/6/2010 3:37 PM, Joshua Holbrook wrote:
In [10]: np.array(list(reversed(np.arange(10).cumsum()))) Out[10]: array([45, 36, 28, 21, 15, 10, 6, 3, 1, 0])
That might appear to match the subject line but does not match the OP's example output, which was [45, 45, 44, 42, 39, 35, 30, 24, 17, 9].
You are giving the equivalent of x.cumsum()[::-1], while the OP asked for the equivalent of x[::-1].cumsum()[::-1].
fwiw, Alan Isaac _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
Oh snap. Good call--idk what I was thinking. Tired, I guess. :) In that case, if you were going to use reversed() things would get a bit nastier: In [13]: np.array(list(reversed(np.array([9-i for i in xrange(10)]).cumsum()))) Out[13]: array([45, 45, 44, 42, 39, 35, 30, 24, 17, 9]) ...which is gross enough that this approach is probably worth abandoning.
I think Ken's suggestion may be the best so far...
I meant to say Alan's suggestion, i.e. x[::-1].cumsum()[::-1].