On Wed, Jun 9, 2010 at 11:47 AM, Vicente Sole <s...@esrf.fr> wrote: > Quoting josef.p...@gmail.com: > >> but the two options don't produce the same result in general, the >> cumsum version doesn't restart from zero, I think >> >> try >> x0 = np.random.randint(5,size=30).cumsum() >> with delta=3 >> >> I don't see a way around recursive looping >> > > The x0 data are already sorted. It was one of the premises of the first post. > > The solution I proposed makes "almost" what I need and I will most > likely use it. It just misses the first value but takes the next one > what is fine for my application. For the simple example, it returns > [1, 5, 9] instead of [0, 4, 8] but it should not disturb me.
but unless you have pretty regular spacing, np.diff(y) can be anything e.g. in a random example, increments of y are if x0 is weakly increasing [[5 0 3 3 4 9 6 0 6 1 8 4]] and if x0 is strictly increasing [[ 2 4 7 1 9 9 5 4 6 2 5 11]] maybe you should check np.diff(y) for your case, in my random example >>> (np.diff(y1)<delta).mean() 0.0 >>> (np.diff(y2)<delta).mean() 0.25 Josef > > Armando > > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org > http://mail.scipy.org/mailman/listinfo/numpy-discussion > _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion