numpy.polynomial.polynomial.Polynomial.fit#
method
- classmethod polynomial.polynomial.Polynomial.fit(x, y, deg, domain=None, rcond=None, full=False, w=None, window=None)[source]#
Least squares fit to data.
Return a series instance that is the least squares fit to the data y sampled at x. The domain of the returned instance can be specified and this will often result in a superior fit with less chance of ill conditioning.
- Parameters
- xarray_like, shape (M,)
x-coordinates of the M sample points
(x[i], y[i])
.- yarray_like, shape (M,)
y-coordinates of the M sample points
(x[i], y[i])
.- degint or 1-D array_like
Degree(s) of the fitting polynomials. If deg is a single integer all terms up to and including the deg’th term are included in the fit. For NumPy versions >= 1.11.0 a list of integers specifying the degrees of the terms to include may be used instead.
- domain{None, [beg, end], []}, optional
Domain to use for the returned series. If
None
, then a minimal domain that covers the points x is chosen. If[]
the class domain is used. The default value was the class domain in NumPy 1.4 andNone
in later versions. The[]
option was added in numpy 1.5.0.- rcondfloat, optional
Relative condition number of the fit. Singular values smaller than this relative to the largest singular value will be ignored. The default value is len(x)*eps, where eps is the relative precision of the float type, about 2e-16 in most cases.
- fullbool, optional
Switch determining nature of return value. When it is False (the default) just the coefficients are returned, when True diagnostic information from the singular value decomposition is also returned.
- warray_like, shape (M,), optional
Weights. If not None, the weight
w[i]
applies to the unsquared residualy[i] - y_hat[i]
atx[i]
. Ideally the weights are chosen so that the errors of the productsw[i]*y[i]
all have the same variance. When using inverse-variance weighting, usew[i] = 1/sigma(y[i])
. The default value is None.New in version 1.5.0.
- window{[beg, end]}, optional
Window to use for the returned series. The default value is the default class domain
New in version 1.6.0.
- Returns
- new_seriesseries
A series that represents the least squares fit to the data and has the domain and window specified in the call. If the coefficients for the unscaled and unshifted basis polynomials are of interest, do
new_series.convert().coef
.- [resid, rank, sv, rcond]list
These values are only returned if
full == True
resid – sum of squared residuals of the least squares fit
rank – the numerical rank of the scaled Vandermonde matrix
sv – singular values of the scaled Vandermonde matrix
rcond – value of rcond.
For more details, see
linalg.lstsq
.