Python中numpy.polyfit的用法详解

numpy中polyfit的用法

参数
polyfit(x, y, deg, rcond=None, full=False, w=None, cov=False):

x:M个采样点的横坐标数组;
y:M个采样点的纵坐标数组;y可以是一个多维数组,这样即可拟合相同横坐标的多个多项式;
deg:多项式阶数。
rcond:Relative condition number,float型,缺省值为 l e n ( x ) ∗ 2 e − 16 len(x)*2e^{-16} len(x)2e16
full:bool型,缺省为False,此时只返回系数向量;full=True时还返回奇异值分解的诊断信息。
w:要应用于采样点的y坐标的权重。缺省为None,形式应该为和y一样长的数组。
cov:bool型,返回估计值及其协方差矩阵。当full=True时不返回cov。

返回值p:多项式系数矩阵,从高阶到低阶,最后一位是常数项。

功能

根据用户给定的x、y、多项式阶数等信息拟合多项式。返回值是一个系数向量。

原理

最小二乘拟合。即使得平方误差最小化。即使得下式最小:
E = ∑ j = 0 k ∣ p ( x j ) − y j ∣ 2 E = \sum_{j=0}^k |p(x_j) - y_j|^2 E=j=0kp(xj)yj2

用例
>>> x = np.array([0.0, 1.0, 2.0, 3.0,  4.0,  5.0])
>>> y = np.array([0.0, 0.8, 0.9, 0.1, -0.8, -1.0])
>>> z = np.polyfit(x, y, 3)
>>> z
array([ 0.08703704, -0.81349206,  1.69312169, -0.03968254])
  • 3
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值