python rolling regression. 使用 Python 实现滚动回归操作


Posted in Python onJune 08, 2020

滚动回归

所谓滚动回归,通常用在时间序列上。记当前时刻为 t,回归时长为 s,则一直使用 当作自变量来预测 。使用滚动回归的目的通常是为了避免未来函数对于回归的影响。

具体来说,如果我们直接用所有数据来建立线性回归模型,则回归系数 ,是关于所有 x 与所有 y 的函数。然而,我们在 时是不知道未来的数据点的!如果使用全部数据进行回归则相当于未卜先知,会造成严重的过拟合。

Python实现

之前 python 的 pandas 与 statsmodels 库均支持滚动回归,但是现在两个都不支持。因此如果大家使用的是最新版的 pandas 与 statsmodels ,那么网上的那些做法均没有用。

目前我找到的唯一可以实现滚动回归的 python 库是 pyfinance,代码如下:

from pyfinance.ols import PandasRollingOLS
 
results = PandasRollingOLS(x, y, window) # window 是滚动回归的自变量个数
results.solution # 每一步估计的截距与斜率
results.beta # 每一步估计的斜率
results.alpha # 每一步估计的截距
results.predicted # 每一步估计的样本内预测值

补充知识:python 实现字幕动态滚动和等待效果

晚上看了些python实现动态字幕效果的文章,总会提到print函数的flush=True参数,还有os.system('cls')清屏,总是迷糊,并不能实现滚动屏幕效果。经过多方思索和查找,总结如下。

1.windows平台下pycharm工具,其实加不加 flush=True 效果都是一样的,因为网上说,有些系统是把字符存放在缓存里不会实时显示,总是再最后才一次性把所有的缓存信息显示,这样的延迟导致看不到动态效果。经过测试,windowns平台的pycharm工具不存在此问题,加不加效果都一样。

2.回车换行符的使用:

# 回车和换行的历史: # 机械打字机有回车和换行两个键作用分别是: # 换行 '\n' 就是把滚筒卷一格,不改变水平位置。 (即移到下一行,但不是行首,而是和上一行水平位置一样) # 回车 '\r' 就是把水平位置复位,不卷动滚筒。 (即将光标移到行首,但是不会移到下一行,如果继续输入的话会覆盖掉前面的内容) # Enter = 回车+换行(\r\n)

所以可以利用回车符,不断清除前面的字符,然后循环显示新的字符,来实现动态滚动效果。

2个实例如下:

实例1 动态广告语

import time
 
content = '钻石永久远,一颗永流传!'
while True:
  print('\r', content, end='', flush=True) #去掉flush参数效果也一样
  content = content[1:] + content[0]
  time.sleep(0.5)

实例2 等待效果

import time
 
while True:
  print('钻石永久远,一颗永流传', end=' ')
  for i in range(10):
    print('·', end='', flush=True) #去掉flush参数效果也一样
    time.sleep(0.3)
  print('\r',end='')

以上这篇python rolling regression. 使用 Python 实现滚动回归操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Apache服务器上同时运行多个Django程序的方法
Jul 22 Python
解决Scrapy安装错误:Microsoft Visual C++ 14.0 is required...
Oct 01 Python
python读写LMDB文件的方法
Jul 02 Python
Python中的集合介绍
Jan 28 Python
python获取交互式ssh shell的方法
Feb 14 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
Feb 18 Python
详解Python list和numpy array的存储和读取方法
Nov 06 Python
python绘制无向图度分布曲线示例
Nov 22 Python
Python使用循环神经网络解决文本分类问题的方法详解
Jan 16 Python
详解python logging日志传输
Jul 01 Python
opencv 图像礼帽和图像黑帽的实现
Jul 07 Python
Python实现科学占卜 让视频自动打码
Apr 09 Python
Python selenium爬虫实现定时任务过程解析
Jun 08 #Python
python:HDF和CSV存储优劣对比分析
Jun 08 #Python
Python实现一个简单的毕业生信息管理系统的示例代码
Jun 08 #Python
Python while true实现爬虫定时任务
Jun 08 #Python
python 实现rolling和apply函数的向下取值操作
Jun 08 #Python
基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解
Jun 08 #Python
Python实现查找数据库最接近的数据
Jun 08 #Python
You might like
火车头采集器3.0采集图文教程
2007/03/17 PHP
在php MYSQL中插入当前时间
2008/04/06 PHP
PHP parse_url 一个好用的函数
2009/10/03 PHP
php带密码功能并下载远程文件保存本地指定目录 修改加强版
2010/05/16 PHP
mysqli扩展无法在PHP7下升级问题的解决
2019/09/10 PHP
初学Javascript的一些总结
2008/11/03 Javascript
全面兼容的javascript时间格式化函数(比较实用)
2014/05/14 Javascript
谈谈JavaScript中function多重理解
2015/08/28 Javascript
同步文本框内容JS代码实现
2016/08/04 Javascript
浅谈js基本数据类型和typeof
2016/08/09 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
2016/08/26 Javascript
js日期相关函数dateAdd,dateDiff,dateFormat等介绍
2016/09/24 Javascript
jQuery EasyUI之验证框validatebox实例详解
2017/04/10 jQuery
从零开始学习Node.js系列教程之设置HTTP头的方法示例
2017/04/13 Javascript
vue.js获取数据库数据实例代码
2017/05/26 Javascript
JavaScript笛卡尔积超简单实现算法示例
2018/07/30 Javascript
微信小程序实现获取准确的腾讯定位地址功能示例
2019/03/27 Javascript
vue打开其他项目页面并传入数据详解
2020/11/25 Vue.js
[09:33]2015国际邀请赛第四日TOP10
2015/08/08 DOTA
python制作花瓣网美女图片爬虫
2015/10/28 Python
python装饰器与递归算法详解
2016/02/18 Python
放弃 Python 转向 Go语言有人给出了 9 大理由
2017/10/20 Python
树莓派3 搭建 django 服务器的实例
2019/08/29 Python
Python实现手势识别
2020/10/21 Python
Python实现微信表情包炸群功能
2021/01/28 Python
canvas实现手机的手势解锁的步骤详细
2020/03/16 HTML / CSS
俄罗斯优惠券网站:BIGLION
2017/05/21 全球购物
3分钟英语演讲稿
2014/04/29 职场文书
销售人才自我评价范文
2014/09/27 职场文书
2014流动人口计划生育工作总结
2014/12/20 职场文书
新教师个人总结
2015/02/06 职场文书
运动会开幕式主持词
2015/07/01 职场文书
《猴王出世》教学反思
2016/02/23 职场文书
2016年119消防宣传日活动总结
2016/04/05 职场文书
PostgreSQL 插入INSERT、删除DELETE、更新UPDATE、事务transaction
2022/04/12 PostgreSQL
HTML 里 img 元素的 src 和 srcset 属性的区别详解
2023/05/21 HTML / CSS