本文实例讲述了Python实现的拉格朗日插值法。分享给大家供大家参考,具体如下:
拉格朗日插值简单介绍
拉格朗日插值法是以法国十八世纪数学家约瑟夫·拉格朗日命名的一种多项式插值方法。
许多实际问题中都用函数来表示某种内在联系或规律,而不少函数都只能通过实验和观测来了解。在若干个不同的地方得到相应的观测值,拉格朗日插值法可以找到一个简单函数,其恰好在各个现测的点取到观测到的值,这个函数可以是代数多项式,三角多项式等。
完整Python示例:
# -*- coding:utf-8 -*- #拉格朗日插值代码 import pandas as pd #导入数据分析库Pandas from scipy.interpolate import lagrange #导入拉格朗日插值函数 inputfile = 'catering_sale.xls' #销量数据路径 data = pd.read_excel(inputfile) #读入数据 data[u'销量'][(data[u'销量'] < 400) | (data[u'销量'] > 5000)] = None #过滤异常值,将其变为空值 #自定义列向量插值函数 #s为列向量,n为被插值的位置,k为取前后的数据个数,默认为5 def ployinterp_column(s, n, k=5): y = s[list(range(n-k, n)) + list(range(n+1, n+1+k))] #取数 y = y[y.notnull()] #剔除空值 return lagrange(y.index, list(y))(n) #插值并返回插值结果 #逐个元素判断是否需要插值 for i in data.columns: for j in range(len(data)): if data[i].isnull()[j]: #如果为空即插值。 data[i][j] = ployinterp_column(data[i], j) print(data)
运行结果:
日期 销量
0 2015-03-01 -291.400000
1 2015-02-28 2618.200000
2 2015-02-27 2608.400000
3 2015-02-26 2651.900000
4 2015-02-25 3442.100000
5 2015-02-24 3393.100000
6 2015-02-23 3136.600000
7 2015-02-22 3744.100000
8 2015-02-21 4275.254762
9 2015-02-20 4060.300000
10 2015-02-19 3614.700000
11 2015-02-18 3295.500000
12 2015-02-16 2332.100000
13 2015-02-15 2699.300000
14 2015-02-14 4156.860423
15 2015-02-13 3036.800000
16 2015-02-12 865.000000
17 2015-02-11 3014.300000
18 2015-02-10 2742.800000
19 2015-02-09 2173.500000
20 2015-02-08 3161.800000
21 2015-02-07 3023.800000
22 2015-02-06 2998.100000
23 2015-02-05 2805.900000
24 2015-02-04 2383.400000
25 2015-02-03 2620.200000
26 2015-02-02 2600.000000
27 2015-02-01 2358.600000
28 2015-01-31 2682.200000
29 2015-01-30 2766.800000
.. ... ...
171 2014-08-31 3494.700000
172 2014-08-30 3691.900000
173 2014-08-29 2929.500000
174 2014-08-28 2760.600000
175 2014-08-27 2593.700000
176 2014-08-26 2884.400000
177 2014-08-25 2591.300000
178 2014-08-24 3022.600000
179 2014-08-23 3052.100000
180 2014-08-22 2789.200000
181 2014-08-21 2909.800000
182 2014-08-20 2326.800000
183 2014-08-19 2453.100000
184 2014-08-18 2351.200000
185 2014-08-17 3279.100000
186 2014-08-16 3381.900000
187 2014-08-15 2988.100000
188 2014-08-14 2577.700000
189 2014-08-13 2332.300000
190 2014-08-12 2518.600000
191 2014-08-11 2697.500000
192 2014-08-10 3244.700000
193 2014-08-09 3346.700000
194 2014-08-08 2900.600000
195 2014-08-07 2759.100000
196 2014-08-06 2915.800000
197 2014-08-05 2618.100000
198 2014-08-04 2993.000000
199 2014-08-03 3436.400000
200 2014-08-02 2261.700000[201 rows x 2 columns]
附:catering_sale.xls点击此处本站下载。
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]