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 相关文章推荐
Python获取系统默认字符编码的方法
Jun 04 Python
Python selenium文件上传方法汇总
Nov 19 Python
python 实现红包随机生成算法的简单实例
Jan 04 Python
使用Python实现windows下的抓包与解析
Jan 15 Python
pandas DataFrame数据转为list的方法
Apr 11 Python
pyqt5的QWebEngineView 使用模板的方法
Aug 18 Python
python实现图片九宫格分割
Mar 07 Python
python函数局部变量、全局变量、递归知识点总结
Nov 15 Python
如何使用python切换hosts文件
Apr 29 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
May 20 Python
python爬虫判断招聘信息是否存在的实例代码
Nov 20 Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
Feb 03 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
不支持fsockopen但支持culr环境下下ucenter与modoer通讯问题
2011/08/12 PHP
从零开始学YII2框架(五)快速生成代码工具 Gii 的使用
2014/08/20 PHP
php页面函数设置超时限制的方法
2014/12/01 PHP
php多进程中的阻塞与非阻塞操作实例分析
2020/03/04 PHP
贴一个在Mozilla中常用的Javascript代码
2007/01/09 Javascript
从新浪弄下来的全屏广告代码 与使用说明
2007/03/15 Javascript
js利用与或运算符优先级实现if else条件判断表达式
2010/04/15 Javascript
jquery控制listbox中项的移动并排序的实现代码
2010/09/28 Javascript
Javascript基础教程之数据类型 (布尔型 Boolean)
2015/01/18 Javascript
基于jquery实现百度新闻导航菜单滑动动画
2016/03/15 Javascript
AngularJS入门教程之数据绑定用法示例
2016/11/01 Javascript
jsp 自动编译机制详细介绍
2016/12/01 Javascript
基于JavaScript实现带缩略图的轮播效果
2017/01/12 Javascript
Java与JavaScript中判断两字符串是否相等的区别
2017/03/13 Javascript
webpack 1.x升级过程中的踩坑总结大全
2017/08/09 Javascript
View.post() 不靠谱的地方你知道多少
2017/08/29 Javascript
Vue.js 表单控件操作小结
2018/03/29 Javascript
Vue项目使用CDN优化首屏加载问题
2018/04/01 Javascript
深入浅析golang zap 日志库使用(含文件切割、分级别存储和全局使用等)
2020/02/19 Javascript
pydev使用wxpython找不到路径的解决方法
2013/02/10 Python
Python序列化基础知识(json/pickle)
2017/10/19 Python
Tensorflow 利用tf.contrib.learn建立输入函数的方法
2018/02/08 Python
Python八大常见排序算法定义、实现及时间消耗效率分析
2018/04/27 Python
python生成多个只含0,1元素的随机数组或列表的实例
2018/11/12 Python
PyTorch中permute的用法详解
2019/12/30 Python
python用Configobj模块读取配置文件
2020/09/26 Python
意大利香水和彩妆护肤品购物网站:Ditano
2017/08/13 全球购物
使用索引(Index)有哪些需要考虑的因素
2016/10/19 面试题
大学毕业感言
2014/01/10 职场文书
秋季运动会表扬稿
2014/01/16 职场文书
职工趣味运动会方案
2014/02/10 职场文书
领导干部廉政承诺书
2014/03/27 职场文书
小学音乐课歌曲《堆雪人》教学反思
2016/02/18 职场文书
Pandas自定义选项option设置
2021/07/25 Python
Django实现WebSocket在线聊天室功能(channels库)
2021/09/25 Python
SpringBoot整合minio快速入门教程(代码示例)
2022/04/03 Java/Android