classscipy.interpolate.LSQUnivariateSpline(x, y, t, w=None, bbox=[None,None], k=3, ext=0, check_finite=False)[source]#
1-D spline with explicit internal knots.
Legacy
This class is considered legacy and will no longer receive updates. While we currently have no plans to remove it, we recommend that new code uses more modern alternatives instead. Specifically, we recommend using make_lsq_spline instead.
Fits a spline y = spl(x) of degree k to the provided x, y data. t
specifies the internal knots of the spline
Parameters:
x(N,) array_like
Input dimension of data points – must be increasing
y(N,) array_like
Input dimension of data points
t(M,) array_like
interior knots of the spline. Must be in ascending order and:
bbox[0]<t[0]<...<t[-1]<bbox[-1]
w(N,) array_like, optional
weights for spline fitting. Must be positive. If None (default),
weights are all 1.
bbox(2,) array_like, optional
2-sequence specifying the boundary of the approximation interval. If
None (default), bbox=[x[0],x[-1]].
kint, optional
Degree of the smoothing spline. Must be 1 <= k <= 5.
Default is k = 3, a cubic spline.
extint or str, optional
Controls the extrapolation mode for elements
not in the interval defined by the knot sequence.
if ext=0 or ‘extrapolate’, return the extrapolated value.
if ext=1 or ‘zeros’, return 0
if ext=2 or ‘raise’, raise a ValueError
if ext=3 of ‘const’, return the boundary value.
The default value is 0.
check_finitebool, optional
Whether to check that the input arrays contain only finite numbers.
Disabling may give a performance gain, but may result in problems
(crashes, non-termination or non-sensical results) if the inputs
do contain infinities or NaNs.
Default is False.
a function to evaluate all derivatives of a B-spline
Notes
The number of data points must be larger than the spline degree k.
Knots t must satisfy the Schoenberg-Whitney conditions,
i.e., there must be a subset of data points x[j] such that
t[j]<x[j]<t[j+k+1], for j=0,1,...,n-k-2.