只需一行代码!Python中9大时间序列预测模型
在时间序列问题上,机器学习被广泛应用于分类和预测问题。当有预测模型来预测未知变量时,在时间充当独立变量和目标因变量的情况下,时间序列预测就出现了。
预测值可以是潜在雇员的工资或银行账户持有人的信用评分。任何正式引入统计数据的数据科学都会遇到置信区间,这是某个模型确定性的衡量标准。
因此,预测一段时间内某些数据的价值需要特定的技术,并且需要多年的发展。
由于每种都有其特殊用途,必须注意为特定应用选择正确的技术。预测人员在技术选择中发挥作用,他们越了解预测可能性的范围,公司的预测工作就越有可能取得成果。
其方法的选择取决于预测的背景、历史数据的相关性和可用性、所需的准确度、预测的时间段、对企业的预测成本以及分析所需的时间。
影响预测的因素
· 增加或减少趋势
· 季节性
· 数据集的大小
时间序列的组成部分与数据本身一样复杂。随着时间的增加,获得的数据也会增加。有时候更多的数据并不意味着更多的信息,但是更大的样本避免了由于随机采样而产生的误差。
因此,对于每个应用程序,使用的技术都会发生变化。
来源:数据科学博客
在本文中,我们列出了最广泛使用的时间序列预测方法,只需一行代码就可以在Python中使用它们:
- Autoregression(AR)
AR方法在先前时间步骤中模拟为观察的线性函数。
模型的表示法涉及指定模型p的顺序作为AR函数的参数。
from statsmodel.tsa.ar_model import AR
- Autoregressive Moving Average(ARMA)
ARMA方法结合了自回归(AR)模型和移动平均(MA)模型。
from statsmodel.tsa.arima_model import ARMA
- Autoregressive Integrated Moving Average(ARIMA)
ARIMA方法结合自回归(AR)和移动平均(MA)模型以及序列的差分预处理步骤以使序列静止,称为积分。
from statsmodel.tsa.arima_model import ARIMA
- Seasonal Autoregressive Integrated Moving-Average (SARIMA)
SARIMA方法将序列中的下一步建模为先前时间步骤的差异观测值、误差、差异性季节观测值和季节性误差的线性函数。
它结合了ARIMA模型,能够在季节性水平上执行相同的自回归、差分和移动平均建模。
from statsmodel.tsa.statespace.sarimax import SARIMAX
- Seasonal Autoregressive Integrated Moving-Average with Exogenous Regressors (SARIMAX)
SARIMAX是SARIMA模型的扩展,还包括外生变量的建模。
SARIMAX方法还可用于使用外生变量对包含的模型进行建模,例如ARX,MAX,ARMAX和ARIMAX。
from statsmodel.tsa.statespace.sarimax import SARIMAX
- Vector Autoregression (VAR)
向量自回归方法使用AR模型。AR是多个并行时间序列的推广。
from statsmodel.tsa.vector_ar.var_model import VAR
- Vector Autoregression Moving-Average (VARMA)
这是ARMA对多个并行时间序列的推广,例如,多变量时间序列。
from statsmodel.tsa.statespace.varmax import VARMAX
- Vector Autoregression Moving-Average with Exogenous Regressors(VARMAX)
VARMAX是VARMA模型的扩展,它还包括外生变量的建模。它是ARMAX方法的多变量版本。
- Holt Winter’s Exponential Smoothing (HWES)
HWES是在先前时间步骤的观测的指数加权线性函数,将考虑趋势和季节性因素。
from statsmodel.tsa.holtwinters import ExponentialSmoothing
只需一行代码!Python中9大时间序列预测模型的更多相关文章
- c# 输出excel、word实例只需一行代码
第一.首先下载 WindICFrameNet.dll 下载地址:http://pan.baidu.com/s/1dDBqC9r 第二.前台代码 <div style="display: ...
- 【eclipse jar包】在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可。
Eclipse中导入外部jar包 在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可. 工具/原料 Eclipse 需要 ...
- 漂浮广告代码兼容ie、firefox,多个漂浮不冲突,调用只需两行代码
原文:漂浮广告代码兼容ie.firefox,多个漂浮不冲突,调用只需两行代码 将广告内容放在div中,设置一个id,然后用下面方法调用var adcls=new AdMove("div的id ...
- Github 大牛封装 Python 代码,实现自动发送邮件只需三行代码
*注意:全文代码可左右滑动观看 在运维开发中,使用 Python 发送邮件是一个非常常见的应用场景.今天一起来探讨一下,GitHub 的大牛门是如何使用 Python 封装发送邮件代码的. 一般发邮件 ...
- Python制作动态二维码只需要一行代码!炒鸡简单!
分享一个比较有意思的项目,只需要一行Python代码就可以快捷方便生成普通二维码.艺术二维码(黑白/彩色)和动态GIF二维码. 用法比较简单,直接通过pip安装即可. pip3 install myq ...
- Python中两大神器&exec() &eval()
一.神器1 -- 内置函数eval eval是python中的内置函数,它的作用是将字符串变为所对应的表达式,也相当于一个功能代码加双引号变为字符串,而eval又将字符串转为相应的功能,它在使用过程中 ...
- 利用ImageAI库只需几行python代码超简实现目标检测
目录 什么是目标检测 目标检测算法 Two Stages One Stage python实现 依赖 安装 使用 附录 什么是目标检测 目标检测关注图像中特定的物体目标,需要同时解决解决定位(loca ...
- 一行代码为UITextField添加收键盘功能
iOS开发中收键盘是十分常用的功能,只需一行代码即可为ViewController添加工具条收键盘功能 更重要的是使用catogory,无代码污染. 代码 // UITextField+keyboar ...
- 「Python实用秘技08」一行代码解析地址信息
本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第8期 ...
随机推荐
- python之循序渐进学习装饰器
python装饰器的定义:在代码运行期间在不改变原函数定义的基础上,动态给该函数增加功能的方式称之为装饰器(Decorator) 装饰器的优点和用途: 1. 抽离出大量函数中与函数功能本身无关的的雷同 ...
- DSAPI中TCP、UDP、HTTP的选择
在DSAPI中,网络通讯主要有以下几种:1 [TCP] TCP服务端 TCP客户端 2 [UDP] UDP服务端 UDP客户端 UDP指令版服务端 UDP指令版客户端 3 [HTTP] HTTP服务端 ...
- 简述Java中的final关键字
final关键字可用于修饰类.方法和变量,final修饰的类不能被继承:final修饰的方法不可被重写:final修饰的变量不可被改变. 1. final类 final修饰的类不能被继承意思是fina ...
- Android App渗透测试工具drozer,Qark,Androguard
一. drozer简介 drozer(以前称为Mercury)是一款Android安全测试框架. drozer允许您通过承担应用程序的角色并与Dalvik VM,其他应用程序的IPC端点和底层操作系统 ...
- 2、自动化运维之SaltStack远程执行详解
SaltStack远程执行详解 ●目标(Targeting) ●模块(Module) ●返回(Returnners) 混合模式-C 选项 主机名设置参照: redis-node1-redis03-id ...
- 必看!如何让你的LBS服务性能提升十倍!
本文由云+社区发表 作者:腾讯云数据库团队 随着国内服务共享化的热潮普及,共享单车,共享雨伞,共享充电宝等各种服务如雨后春笋,随之而来的LBS服务定位问题成为了后端服务的一个挑战.MongoDB对LB ...
- SQLServer之修改数据库架构
修改数据库架构注意事项 用户与架构完全分离. ALTER SCHEMA 仅可用于在同一数据库中的架构之间移动安全对象. 若要更改或删除架构中的安全对象,请使用特定于该安全对象的 ALTER 或 DRO ...
- 一个简单的cmake例子
一个简单的cmake例子CMakeLists.txt,生成动态库文件,可以指定发布目录. 尚不支持: 1.交叉编译环境配置 2.添加依赖库 #在当前目录新建一个build目录,然后cd build ...
- git 版本库基础知识学习
什么是版本库?什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可 ...
- .NetCore WebApi——Swagger简单配置
在前后端分离的大环境下,API接口文档成为了前后端交流的一个重点.Swagger让开发人员摆脱了写接口文档的痛苦. 官方网址:https://swagger.io/ 在.Net Core WebApi ...