[SciPy-User] scipy interpolate.interp1d spline slowness

Pauli Virtanen pav at iki.fi
Thu Dec 13 07:18:19 EST 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.

-- 
Pauli Virtanen




More information about the SciPy-User mailing list