用python实现分段函数_分段插值法原理及Python实现

插值、预测、拟合是三个十分相近的概念。

(1)插值一般要求插值函数经过所有的样本点,形成复杂的插值函数。

插值有两大基本思路:

思路1:已知n个样本点,基于样本数据计算出唯一的插值函数f(x),使得f(x)经过每个样本点,再根据f(x)计算新的x-new对应的y值(即插值)。当获得f(x)后,可以对任意x进行插值计算。

这样的f(x)自然十分贴合样本点,但是往往函数次数十分高,即产生的f(x)是高次多项式,容易产生龙格现象,即边缘点的插值结果与样本点差异较大。

思路2:分段插值。插值结果仅取决于周围少数2个、3个点。最终形成复杂的分段函数。不过分段插值局限性比较明显,即新的x只能介于样本点的x区间内。如,已知样本点x的取值范围为【0,10】,则我们不能使用分段插值法计算x = 11的插值y。

(2)拟合方法指根据样本点形成一个拟合函数f(x),拟合函数不一定经过所有的样本点,它要求拟合值与实际值之间的误差之和最小,即总体误差最小即可。可以基于获得的拟合函数f(x)预测新的任意x对应的y。

1.分段一次插值法(也称:分段线性插值法)【常用~】

分段线性将每两个相邻的节点用直线连起来,如此形成的一条折线就是分段线性插值函数。图片来源:清风老师课件

计算点xi的插值时,只用到左(Xi-1)右(Xi+1)的两个点,因此计算效率较高。

python代码示例:

from scipy.interpolate import interp1d

import matplotlib.pyplot

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值