python样条插值的实现代码


Posted in Python onDecember 17, 2018

本文实例为大家分享了python样条插值的具体实现代码,供大家参考,具体内容如下

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
 
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
 
#导入数据
data1=pd.read_csv('data1.csv',encoding='gbk')
 
#数据准备
X=data1.index #定义数据点
Y=data1['沪深300'].values #定义数据点
x=np.arange(0,len(data1),0.15) #定义观测点
 
#进行样条差值
import scipy.interpolate as spi
 
#进行一阶样条差值
ipo1=spi.splrep(X,Y,k=1) #源数据点导入,生成参数
iy1=spi.splev(x,ipo1) #根据观测点和样条参数,生成插值
 
#进行三次样条拟合
ipo3=spi.splrep(X,Y,k=3) #源数据点导入,生成参数
iy3=spi.splev(x,ipo3) #根据观测点和样条参数,生成插值
 
 
##作图
fig,(ax1,ax2)=plt.subplots(2,1,figsize=(10,12))
ax1.plot(X,Y,label='沪深300')
ax1.plot(x,iy1,'r.',label='插值点')
ax1.set_ylim(Y.min()-10,Y.max()+10)
ax1.set_ylabel('指数')
ax1.set_title('线性插值')
ax1.legend()
ax2.plot(X,Y,label='沪深300')
ax2.plot(x,iy3,'b.',label='插值点')
ax2.set_ylim(Y.min()-10,Y.max()+10)
ax2.set_ylabel('指数')
ax2.set_title('三次样条插值')
ax2.legend()

python样条插值的实现代码

基于《Python 与量化投资 从基础到实战》的内容练习

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现定制交互式命令行的方法
Jul 03 Python
Python中使用copy模块实现列表(list)拷贝
Apr 14 Python
Python爬虫爬取美剧网站的实现代码
Sep 03 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
Jun 11 Python
Flask之flask-session的具体使用
Jul 26 Python
python如何发布自已pip项目的方法步骤
Oct 09 Python
Transpose 数组行列转置的限制方式
Feb 11 Python
python手机号前7位归属地爬虫代码实例
Mar 31 Python
Python任务调度利器之APScheduler详解
Apr 02 Python
Python爬取豆瓣数据实现过程解析
Oct 27 Python
基于Django快速集成Echarts代码示例
Dec 01 Python
用Python 执行cmd命令
Dec 18 Python
解决python3 HTMLTestRunner测试报告中文乱码的问题
Dec 17 #Python
python3爬虫获取html内容及各属性值的方法
Dec 17 #Python
解决Python中list里的中文输出到html模板里的问题
Dec 17 #Python
python实现三次样条插值
Dec 17 #Python
Python命名空间的本质和加载顺序
Dec 17 #Python
对python的unittest架构公共参数token提取方法详解
Dec 17 #Python
Python单元测试unittest的具体使用示例
Dec 17 #Python
You might like
PHP常用代码
2006/11/23 PHP
PHP中source #N问题的解决方法
2014/01/27 PHP
CI(CodeIgniter)框架配置
2014/06/10 PHP
ThinkPHP实现一键清除缓存方法
2014/06/26 PHP
destoon调用discuz论坛中带图片帖子的实现方法
2014/08/21 PHP
浅析Yii2 gridview实现批量删除教程
2016/04/22 PHP
Yii框架引用插件和ckeditor中body与P标签去除的方法
2017/01/19 PHP
Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
2017/02/15 PHP
获取JavaScript用户自定义类的类名称的代码
2007/03/08 Javascript
json的前台操作和后台操作实现代码
2012/01/20 Javascript
JS页面延迟执行一些方法(整理)
2013/11/11 Javascript
使用jquery局部刷新(jquery.load)从数据库取出数据
2014/01/22 Javascript
JS获取各种宽度、高度的简单介绍
2014/12/19 Javascript
jQuery找出网页上最高元素的方法
2015/03/20 Javascript
JavaScript中constructor()方法的使用简介
2015/06/05 Javascript
jquery遍历table的tr获取td的值实现方法
2016/05/19 Javascript
基于JavaScript实现回到页面顶部动画代码
2016/05/24 Javascript
纯JS打造网页中checkbox和radio的美化效果
2016/10/13 Javascript
JSONP基础知识详解
2017/03/19 Javascript
学习React中ref的两个demo示例
2018/08/14 Javascript
解决Nuxt使用axios跨域问题
2020/07/06 Javascript
vue实现给div绑定keyup的enter事件
2020/07/31 Javascript
[50:24]VGJ.S vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
详细讲解用Python发送SMTP邮件的教程
2015/04/29 Python
centos6.4下python3.6.1安装教程
2017/07/21 Python
numpy中实现ndarray数组返回符合特定条件的索引方法
2018/04/17 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
2018/04/19 Python
详解Python用户登录接口的方法
2019/04/17 Python
如何利用Python模拟GitHub登录详解
2019/07/15 Python
解决pycharm每次打开项目都需要配置解释器和安装库问题
2020/02/26 Python
瑞典灯具和照明网上商店:Lamp24.se
2018/03/17 全球购物
乌克兰最大的家用电器和电子产品连锁店:Eldorado
2019/10/02 全球购物
研究生求职推荐信范文
2013/11/30 职场文书
美化环境标语
2014/06/20 职场文书
滴水洞导游词
2015/02/10 职场文书
分享CSS盒子模型隐藏的几种方式
2022/02/28 HTML / CSS