[SciPy-User] scipy interpolate.interp1d spline slowness
Thu Dec 13 06:18:19 CST 2012
Wolfgang Kerzendorf <wkerzendorf <at> gmail.com> writes:
> I've just stumbled across a problem with interpolate.interp1d:
> import numpy as np
> from scipy import interpolate
> x = arange(1000)
> y = y = np.random.random_integers(0, 900, 1000)
> %timeit interp = interpolate.interp1d(x, y, kind='cubic')
> 1 loops, best of 3: 3.63 s per loop
This is indeed slow. The problem is probably that the spline fitting
routine splmake() does not make use of the bandedness of the spline
interpolation matrix, and so it is inefficient.
Switching to FITPACK splines could be a better option --- I think the
duplicated (and partial) spline functionality is not very useful.
More information about the SciPy-User