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函数缺省值与引用学习笔记分享
Feb 10 Python
Python如何import文件夹下的文件(实现方法)
Jan 24 Python
python实现读Excel写入.txt的方法
Apr 29 Python
Python引用计数操作示例
Aug 23 Python
Python列表list排列组合操作示例
Dec 18 Python
java判断三位数的实例讲解
Jun 10 Python
简单了解Python生成器是什么
Jul 02 Python
python实现12306登录并保存cookie的方法示例
Dec 17 Python
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 Python
如何在Python对Excel进行读取
Jun 04 Python
python-jwt用户认证食用教学的实现方法
Jan 19 Python
Python可视化神器pyecharts绘制水球图
Jul 07 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
DC最新动画电影:《战争之子》为何内容偏激,毁了一个不错的漫画
2020/04/09 欧美动漫
linux下 C语言对 php 扩展
2008/12/14 PHP
phpmyadmin MySQL 加密配置方法
2009/07/05 PHP
ThinkPHP验证码使用简明教程
2014/03/05 PHP
php $_SESSION会员登录实例分享
2021/01/19 PHP
php查找字符串中第一个非0的位置截取
2017/02/27 PHP
奉献给JavaScript初学者的编写开发的七个细节
2011/01/11 Javascript
火狐下input焦点无法重复获取问题的解决方法
2014/06/16 Javascript
jQuery中append()方法用法实例
2015/01/08 Javascript
JavaScript使ifram跨域相互访问及与PHP通信的实例
2016/03/03 Javascript
jQuery点击其他地方时菜单消失的实现方法
2016/04/22 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
快速解决select2在bootstrap模态框中下拉框隐藏的问题
2018/08/10 Javascript
vue实现在一个方法执行完后执行另一个方法的示例
2018/08/25 Javascript
vue-router 实现导航守卫(路由卫士)的实例代码
2018/09/02 Javascript
Vue项目自动转换 px 为 rem的实现方法
2018/10/29 Javascript
Vue 报错TypeError: this.$set is not a function 的解决方法
2018/12/17 Javascript
js实现多个倒计时并行 js拼团倒计时
2019/02/25 Javascript
[02:05]2014DOTA2国际邀请赛 BBC外卡赛赛后总结
2014/07/09 DOTA
pygame学习笔记(1):矩形、圆型画图实例
2015/04/15 Python
python中split方法用法分析
2015/04/17 Python
在Django同1个页面中的多表单处理详解
2017/01/25 Python
详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
2017/06/23 Python
对Django中内置的User模型实例详解
2019/08/16 Python
python修改文件内容的3种方法详解
2019/11/15 Python
Python字典生成式、集合生成式、生成器用法实例分析
2020/01/07 Python
python GUI库图形界面开发之PyQt5信号与槽事件处理机制详细介绍与实例解析
2020/03/08 Python
html5 svg 中元素点击事件添加方法
2013/01/16 HTML / CSS
HTML5中新标签和常用标签详解
2014/03/07 HTML / CSS
html5使用canvas绘制太阳系效果
2014/12/15 HTML / CSS
美国娱乐和流行文化商品店:FYE
2017/09/14 全球购物
丝芙兰香港官网:Sephora香港
2018/03/13 全球购物
C++的几个面试题附答案
2016/08/03 面试题
给校长的建议书300字
2014/05/16 职场文书
故意伤害人身损害赔偿协议书
2014/11/19 职场文书
初中地理教学反思
2016/02/19 职场文书