美文网首页
拉格朗日插值法实例

拉格朗日插值法实例

作者: 橘猫吃不胖 | 来源:发表于2020-05-29 17:38 被阅读0次

关于拉格朗日插值法,参考:

数据集

加载我们的数据集

data_path = r'D:\OneDrive\python\datasets\python_data_analysis_and_mining_action-master\chapter4\data\catering_sale.xls'
df = pd.read_excel(data_path)

这个是每天的销量数据

缺失值

前面我们知道,对于缺失值的处理,我们可以使用插值法来填补数据

我们得先看看有多少缺失值

df.isna().sum()

这里只有1条缺失值数据

df[df['销量'].isna()]

拉格朗日插值法

我们找到缺失值了,下面就该调用函数使用了
先回顾一下,怎么使用,首先我们要知道变量X和变量Y

因为我们的缺失值是销量,所以变量Y就是已知的销量
X的话,可以是索引
前面提过,元素个数不要太多,因为这个scipy中的lagrange函数并不稳定
至于到底选取几个,我暂时没有什么概念,书中取的是10,我这里也取10吧,前面取5个,后面取5个,共10个值

df2 = df.query('9<=index<14 or 15<=index<19')['销量']

这里我其实有一个疑问,就是X的值如何取?
书中是使用的下标,也就是index的值

x = df2.index.values
y = df2.values

调用拉格朗日函数

rs = lagrange(x,y)
print(rs)

最后,看看我们的缺失值是多少呢?

rs(14)

这里得出来是3831,这个数据靠不靠谱呢?

先从我们的区间中看看:


3831看上去还可以,而且呢,因为我们还有一个日期字段,也可以结合星期看看

df['星期几'] = df['日期'].dt.weekday_name

df.query('星期几=="Saturday"')

好像也可以接受呢


最后呢,我们要回顾一下,我们都做了些什么,我们是一步一步处理的,但是实际情况下,我们不会手工的去看缺失值在哪里,我们需要用代码去筛选出缺失值,并且将最后的值插回数据集中,思考一下,如何自动化?

相关文章

  • 如何分摊秘密(七)

    十、拉格朗日插值法 本节介绍拉格朗日插值法,学过的读者请略过。 从数值分析的角度来看,拉格朗日插值法常被描述成是用...

  • 拉格朗日插值法实例

    关于拉格朗日插值法,参考: 拉格朗日插值法 数据集 加载我们的数据集 这个是每天的销量数据 缺失值 前面我们知道,...

  • 缺失值处理-拉格朗日插值

    常用的插值法有:一维插值法:拉格朗日插值、牛顿插值、分段低次插值、埃尔米特插值、样条插值。二维插值法:双线性插值、...

  • 插值-拉格朗日插值法

    朗格朗日插值法的定义 原理 一般地,若已知[ ]在互不相同 n+1 个点[ ]处的函数值[ ]( 即该函数过[ ]...

  • 拉格朗日插值法

    scipy.interpolate.lagrange scipy.interpolate.lagrange(x, ...

  • 《算法导论》读书笔记 kirai 16/11/18 第30章 多

    拉格朗日插值公式以及一些变形 拉格朗日插值公式看起来很复杂,其实自己举一个例子解一解就很容易明白了。读书的过程中发...

  • 数值分析:多项式插值

    前言 插值不仅仅用在数值积分,更是有限元和谱元法的基础!在多种多样的插值方法中,首先推荐的是分段线性(拉格朗日)插...

  • 数学建模&matlab之插值与拟合

    1. 拉格朗日多项式插值 了解概念 插值多项式插值节点范德蒙特(Vandermonde)行列式截断误差、插值余项...

  • 插值及截图

    1插值 将4352乘3840的矩阵data插值为4410乘3850的矩阵datas 2截图 3拉格朗日插值 htt...

  • 拉格朗日插值方法

    提出问题,对于某一个未知函数的一组观测或者实验数据,寻找一个多项式函数,使这个多项式函数能够过这些点 拉格朗日插值...

网友评论

      本文标题:拉格朗日插值法实例

      本文链接:https://www.haomeiwen.com/subject/itkfzhtx.html