2013-07-10 2 views

Antwort

7

an der Quelle der Suche von scipy/interpolate/interpolate.py, slinear ist ein spline der Ordnung 1

if kind in ['zero', 'slinear', 'quadratic', 'cubic']: 
    order = {'nearest': 0, 'zero': 0,'slinear': 1, 
      'quadratic': 2, 'cubic': 3}[kind] 
    kind = 'spline' 

...

if kind in ('linear', 'nearest'): 
    # Make a "view" of the y array that is rotated to the interpolation 
    # axis. 
    minval = 2 
    if kind == 'linear': 
     self._call = self._call_linear 
    elif kind == 'nearest': 
     self.x_bds = (x[1:] + x[:-1])/2.0 
     self._call = self._call_nearest 
else: 
    minval = order + 1 
    self._call = self._call_spline 
    self._spline = splmake(x, y, order=order) 

Da die Dokumentation für splmake Zustand:

def splmake(xk, yk, order=3, kind='smoothest', conds=None): 
    """ 
    Return a representation of a spline given data-points at internal knots 
    ... 
+0

Sie schlag mich dazu. Ich kam zu der gleichen Schlussfolgerung. –

+3

@NilsWerner Obwohl, wenn wir beide auf die Quelle zurückgreifen mussten, ist es ein guter Hinweis, dass die Dokumente unvollständig sind. – Hooked

+4

Wann kann man "linear" gegenüber "linear" wählen? Ein sehr kurzer Test zeigt, dass "linear" schneller ist und das gleiche Ergebnis liefert. –

Verwandte Themen