在时间序列问题上,机器学习被广泛应用于分类和预测问题。当有预测模型来预测未知变量时,在时间充当独立变量和目标因变量的情况下,时间序列预测就出现了。

预测值可以是潜在雇员的工资或银行账户持有人的信用评分。任何正式引入统计数据的数据科学都会遇到置信区间,这是某个模型确定性的衡量标准。

因此,预测一段时间内某些数据的价值需要特定的技术,并且需要多年的发展。

由于每种都有其特殊用途,必须注意为特定应用选择正确的技术。预测人员在技术选择中发挥作用,他们越了解预测可能性的范围,公司的预测工作就越有可能取得成果。

其方法的选择取决于预测的背景、历史数据的相关性和可用性、所需的准确度、预测的时间段、对企业的预测成本以及分析所需的时间。

影响预测的因素

· 增加或减少趋势

· 季节性

· 数据集的大小

时间序列的组成部分与数据本身一样复杂。随着时间的增加,获得的数据也会增加。有时候更多的数据并不意味着更多的信息,但是更大的样本避免了由于随机采样而产生的误差。

因此,对于每个应用程序,使用的技术都会发生变化。

来源:数据科学博客

在本文中,我们列出了最广泛使用的时间序列预测方法,只需一行代码就可以在Python中使用它们:

  1. Autoregression(AR)

AR方法在先前时间步骤中模拟为观察的线性函数。

模型的表示法涉及指定模型p的顺序作为AR函数的参数。

from statsmodel.tsa.ar_model import AR

  1. Autoregressive Moving Average(ARMA)

ARMA方法结合了自回归(AR)模型和移动平均(MA)模型。

from statsmodel.tsa.arima_model import ARMA

  1. Autoregressive Integrated Moving Average(ARIMA)

ARIMA方法结合自回归(AR)和移动平均(MA)模型以及序列的差分预处理步骤以使序列静止,称为积分。

from statsmodel.tsa.arima_model import ARIMA

  1. Seasonal Autoregressive Integrated Moving-Average (SARIMA)

SARIMA方法将序列中的下一步建模为先前时间步骤的差异观测值、误差、差异性季节观测值和季节性误差的线性函数。

它结合了ARIMA模型,能够在季节性水平上执行相同的自回归、差分和移动平均建模。

from statsmodel.tsa.statespace.sarimax import SARIMAX

  1. Seasonal Autoregressive Integrated Moving-Average with Exogenous Regressors (SARIMAX)

SARIMAX是SARIMA模型的扩展,还包括外生变量的建模。

SARIMAX方法还可用于使用外生变量对包含的模型进行建模,例如ARX,MAX,ARMAX和ARIMAX。

from statsmodel.tsa.statespace.sarimax import SARIMAX

  1. Vector Autoregression (VAR)

向量自回归方法使用AR模型。AR是多个并行时间序列的推广。

from statsmodel.tsa.vector_ar.var_model import VAR

  1. Vector Autoregression Moving-Average (VARMA)

这是ARMA对多个并行时间序列的推广,例如,多变量时间序列。

from statsmodel.tsa.statespace.varmax import VARMAX

  1. Vector Autoregression Moving-Average with Exogenous Regressors(VARMAX)

VARMAX是VARMA模型的扩展,它还包括外生变量的建模。它是ARMAX方法的多变量版本。

  1. Holt Winter’s Exponential Smoothing (HWES)

HWES是在先前时间步骤的观测的指数加权线性函数,将考虑趋势和季节性因素。

from statsmodel.tsa.holtwinters import ExponentialSmoothing

只需一行代码!Python中9大时间序列预测模型的更多相关文章

  1. c# 输出excel、word实例只需一行代码

    第一.首先下载 WindICFrameNet.dll 下载地址:http://pan.baidu.com/s/1dDBqC9r 第二.前台代码 <div style="display: ...

  2. 【eclipse jar包】在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可。

    Eclipse中导入外部jar包 在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可. 工具/原料 Eclipse 需要 ...

  3. 漂浮广告代码兼容ie、firefox,多个漂浮不冲突,调用只需两行代码

    原文:漂浮广告代码兼容ie.firefox,多个漂浮不冲突,调用只需两行代码 将广告内容放在div中,设置一个id,然后用下面方法调用var adcls=new AdMove("div的id ...

  4. Github 大牛封装 Python 代码,实现自动发送邮件只需三行代码

    *注意:全文代码可左右滑动观看 在运维开发中,使用 Python 发送邮件是一个非常常见的应用场景.今天一起来探讨一下,GitHub 的大牛门是如何使用 Python 封装发送邮件代码的. 一般发邮件 ...

  5. Python制作动态二维码只需要一行代码!炒鸡简单!

    分享一个比较有意思的项目,只需要一行Python代码就可以快捷方便生成普通二维码.艺术二维码(黑白/彩色)和动态GIF二维码. 用法比较简单,直接通过pip安装即可. pip3 install myq ...

  6. Python中两大神器&exec() &eval()

    一.神器1 -- 内置函数eval eval是python中的内置函数,它的作用是将字符串变为所对应的表达式,也相当于一个功能代码加双引号变为字符串,而eval又将字符串转为相应的功能,它在使用过程中 ...

  7. 利用ImageAI库只需几行python代码超简实现目标检测

    目录 什么是目标检测 目标检测算法 Two Stages One Stage python实现 依赖 安装 使用 附录 什么是目标检测 目标检测关注图像中特定的物体目标,需要同时解决解决定位(loca ...

  8. 一行代码为UITextField添加收键盘功能

    iOS开发中收键盘是十分常用的功能,只需一行代码即可为ViewController添加工具条收键盘功能 更重要的是使用catogory,无代码污染. 代码 // UITextField+keyboar ...

  9. 「Python实用秘技08」一行代码解析地址信息

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第8期 ...

随机推荐

  1. ajax请求window.open()被拦截

    项目使用ajax post后根据返回的success,需要打开一个新页面,使用window.open发现谷歌浏览器直接被拦截. 后来了解发现该操作并不是用户主动触发的,所以它认为这是不安全的就拦截了, ...

  2. 设计模式 | 抽象工厂模式(abstract factory)

    定义: 提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类. 结构:(书中图,侵删) 这个图相对来说有一点点复杂,其实就是在工厂方法模式的基础上做了一些扩展,工厂方法模式只用于生成一种 ...

  3. 基于后端云的Android注册登录开发

    APP开发离不开注册登录功能,但是注册登录功能开发需要后台数据库的支持,对于一些初学者或者对后台数据 不熟悉的同学来说可能会有些困难.本文介绍一下后端云: 1. Bmob是国内起步较早的云后端服务平台 ...

  4. Windows Server 2016-Netdom Join加域并指定OU (一)

    前边我们提到了客户端如何通过图形化.netdom .Powershell方式加域,这里我们简单补充下生产环境中如何通过有权限的用户账号加域并指定对应的OU,以防止域策略下发对部分生产服务器权限等内容进 ...

  5. pytest进阶之xunit fixture

    前言 今天我们再说一下pytest框架和unittest框架相同的fixture的使用, 了解unittest的同学应该知道我们在初始化环境和销毁工作时,unittest使用的是setUp,tearD ...

  6. July 01st. 2018, Week 27th. Sunday

    Empty your cup so that it may be filled. 清空杯子,方能再次装满. From Bruce Lee. We can't learn anything new if ...

  7. c# word文档的操作

    参考https://blog.csdn.net/ruby97/article/details/7406806 Word对象模型  (.Net Perspective) 本文主要针对在Visual St ...

  8. BASE64编码原理分析脚本实现及逆向案例

    在互联网中的每一刻,你可能都在享受着Base64带来的便捷,但对于Base64的基础原理你又了解多少?今天小编带大家了解一下Base64编码原理分析脚本实现及逆向案例的相关内容.   01编码由来 数 ...

  9. django框架使用mysql步骤

    在创建好django项目的基础上来讲解使用orm框架 注意:首先在mysql中手动或者通过命令创建一个数据库,我先创建一个名为orm的数据库. 1:在项目文件夹中的settings.py文件中配置my ...

  10. 《前端之路》之三 数组的属性 && 操作方法(上)

    目录 03:数组的属性 && 操作方法(上) 03:数组的属性 && 操作方法(上) 一.Array property 数组的属性 1.constructor 返回对创 ...