[Numpy-discussion] suggested change of behavior for interp
Tue Jun 4 20:08:29 CDT 2013
On 2013/06/04 2:05 PM, Charles R Harris wrote:
> On Tue, Jun 4, 2013 at 12:07 PM, Slavin, Jonathan
> <firstname.lastname@example.org <mailto:email@example.com>> wrote:
> I would like to suggest that the behavior of numpy.interp be changed
> regarding treatment of situations in which the x-coordinates are not
> monotonically increasing. Specifically, it seems to me that interp
> should work correctly when the x-coordinate is decreasing
> monotonically. Clearly it cannot work if the x-coordinate is not
> monotonic, but in that case it should raise an exception. Currently
> if x is not increasing it simply silently fails, providing incorrect
> values. This fix could be as simple as a monotonicity test and
> inversion if necessary (plus a raise statement for non-monotonic cases).
> Seems reasonable, although it might add a bit of execution time.
The monotonicity test should be an option if it is available at all;
when interpolating a small number of points from a large pair of arrays,
the single sweep through the whole array could dominate the execution
time. Checking for increasing versus decreasing, in contrast, can be
done fast, so handling the decreasing case transparently is reasonable.
More information about the NumPy-Discussion