There might be an easier way to accomplish that y = x[(x[1:]-x[:-1]) >= delta]
cheers Am Mittwoch, den 09.06.2010, 10:00 +0200 schrieb "V. Armando Solé": > Well, this seems to be quite close to what I need > > y = numpy.cumsum((x[1:]-x[:-1])/delta).astype(numpy.int) > i1 = numpy.nonzero(y[1:] > y[:-1]) > y = numpy.take(x, i1) > > Sorry for the time taken! > > Best regards, > > Armando > > V. Armando Solé wrote: > > Hello, > > > > I am trying to solve a simple problem that becomes complex if I try to > > avoid looping. > > > > Let's say I have a 1D array, x, where x[i] <= x[i+1] > > > > Given a certain value delta, I would like to get a subset of x, named y, > > where (y[i+1] - y[i]) >= delta > > > > In a non-optimized and trivial way, the operation I would like to do is: > > > > y=[x[0]] > > for value in x: > > if (y[-1] -value) < delta: > > y.append(value) > > y=numpy.array(y) > > > > Any hint? > > > > Best regards, > > > > 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 _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion