numpy.polynomial.polynomial.Polynomial.fit#

方法

classmethod polynomial.polynomial.Polynomial.fit(x, y, deg, domain=None, rcond=None, full=False, w=None, window=None, symbol='x')[source]#

对数据进行最小二乘拟合。

返回一个系列实例,该实例是数据 yx 处采样时的最小二乘拟合。返回实例的域可以指定,这通常会导致更好的拟合,并且减少病态条件的可能性。

参数:
xarray_like, 形状 (M,)

M 个样本点的 x 坐标 (x[i], y[i])

yarray_like, 形状 (M,)

M 个样本点的 y 坐标 (x[i], y[i])

degint 或 1-D array_like

拟合多项式的次数。如果 deg 是一个整数,则拟合中将包含所有最高次数为 deg 的项。对于 NumPy 版本 >= 1.11.0,可以使用一个整数列表来指定要包含的项的次数。

domain{None, [beg, end], []}, 可选

用于返回系列的域。如果为 None,则选择一个覆盖点 x 的最小域。如果为 [],则使用类域。默认值为 NumPy 1.4 中的类域,在更高版本中为 None[] 选项在 numpy 1.5.0 中添加。

rcondfloat, 可选

拟合的相对条件数。小于此值相对于最大奇异值的奇异值将被忽略。默认值为 len(x)*eps,其中 eps 是浮点类型的相对精度,在大多数情况下约为 2e-16。

fullbool, 可选

确定返回值性质的开关。当它为 False(默认值)时,只返回系数,当它为 True 时,也会返回来自奇异值分解的诊断信息。

warray_like, 形状 (M,), 可选

权重。如果为非 None,则权重 w[i] 应用于 x[i] 处的未平方残差 y[i] - y_hat[i]。理想情况下,权重应选择为使产品 w[i]*y[i] 的误差具有相同的方差。当使用逆方差加权时,使用 w[i] = 1/sigma(y[i])。默认值为 None。

版本 1.5.0 中新增。

window{[beg, end]}, 可选

用于返回系列的窗口。默认值为默认的类域

版本 1.6.0 中新增。

symbolstr, 可选

表示自变量的符号。默认值为 'x'。

返回值:
new_seriesseries

一个系列,它表示数据的最小二乘拟合,并具有调用中指定的域和窗口。如果对未缩放和未移位的基多项式的系数感兴趣,请执行 new_series.convert().coef

[resid, rank, sv, rcond]list

这些值仅在 full == True 时返回

  • resid – 最小二乘拟合的平方残差之和

  • rank – 缩放后的范德蒙德矩阵的数值秩

  • sv – 缩放后的范德蒙德矩阵的奇异值

  • rcond – rcond 的值。

有关更多详细信息,请参阅 linalg.lstsq