只需一行代码!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

原文地址:https://blog.51cto.com/14318113/2399865

时间: 2024-10-27 14:02:30

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

【猿团专访】|涂图CEO胡东平:只需一行代码 移动图像开发从未如此简单

我们常常戏说这是一个靠脸吃饭的时代,继“整容”“化妆”之后,”修图““美颜”成为变好看的又一大神器.于是市场上涌现出越来越多自带美颜.滤镜功能的APP,大众也是用得不亦乐乎,可是移动图像处理开发套件领域出众者却寥寥.涂图(TuSDK)就像是横空杀出的黑马,2015年4月产品上线,6月即获得了浙大科发.华旦天使.立元创投.浙江国智的天使轮投资.截止目前,涂图已经覆盖8亿用户,整体客户超过4000家,并且每个月以四百五百家的量稳定增长,囊括了诸多如熊猫tv.小红书.一起秀. Blued这样的知名客户

只需一行代码,将已有PC网站转成移动网站

跨屏网 Kuaping.com专注于几百万PC网站的移动化需求,只需在网站加载一行JS代码即可实现快速将网站变成移动端网站的需求. 对于响应式自适应界面,很多人可能还是不是特别清楚,响应式的实现方式在于通过界面技术来实现同一个界面在不同尺寸显示屏可以显示不同的界面.电脑端打开呈现的是电脑端网页的样子,手机下访问则看到的是手机版的样子, 这不是很高深的技术,只是对于html5技术的运用, 而跨屏网推出的一行JS代码快速实现,则是背后通过了更加复杂的分析技术实现. 今天跨屏网聊一聊自适应跨屏网站 跨

file标签之act=read(只需一行代码读出文件内容)

功能: ·        读文件的内容 用法: <file act=read[id=书包名] [enc=文件字符编码] method=str name=名称[start=int] [end=int]>相对路径的文件名</file> ·        act=read:读操作 ·        id:返回的书包名(可选,默认为标签名file) ·        enc:文件内容的字符编码(可选,默认为平台文件存储编码@{sys:file.enc}) ·        method:目

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

原文:漂浮广告代码兼容ie.firefox,多个漂浮不冲突,调用只需两行代码 将广告内容放在div中,设置一个id,然后用下面方法调用var adcls=new AdMove("div的id");adcls.Run();注意,在调用前要先引用Main.js和AdFloat.js,div也要在调用前写好,原因就不用说了吧或者也可以用下面方法,在页面加载完成时调用,就不用考虑位置了addEvent(window,"load",initad);function inita

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

*注意:全文代码可左右滑动观看 在运维开发中,使用 Python 发送邮件是一个非常常见的应用场景.今天一起来探讨一下,GitHub 的大牛门是如何使用 Python 封装发送邮件代码的. 一般发邮件方法 SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件.HTML邮件以及带附件的邮件. 我们以前在通过Python实现自动化邮件功能的时候是这样的: import smtplibfrom email.mime.text import MIMETextfrom email

Java8读文件仅需一行代码

JDK7中引入了新的文件操作类java.nio.file.File,它包含了很多有用的方法来操作文件,比如检查文件是否为隐藏文件,或者是检查文件是否为只读文件.开发者还可以使用Files.readAllBytes(Path)方法把整个文件读入内存,此方法返回一个字节数组,还可以把结果传递给String的构造器,以便创建字符串输出. 此方法确保了当读入文件的所有字节内容时,文件属性是关闭的,否则就会出现IO异常或其它的未检查异常.这意味着在读文件到最后的块内容后,无需关闭文件.要注意,此方法不适合

银行卡验证接口API(仅需一行代码,实现全国银行卡核验)

银行卡确认在互联网越来越普及,在二手.电商.贷款.等主流互联网应用中都有明确的刚需,传统的 银行卡核验方式是用户上传图片,客服后台人肉审核,但问题在于根本无从确认 银行卡的真实性,也不能确认该 银行卡持有人和身份证的契合关系. 今天谈的是对接全国银行进行实时银行卡认证的银行卡核验系统,需要的请求值包括:姓名.身份证号.银行卡号.手机号 代码很简单,向七侠犬服务器发起以下WEB请求: https://api.7xq.com/bandCard?name=姓名&no=身份证号码&mobile=手

一行代码,快速为UITableView创建Delegate和DataSource

只需一行代码,快速为UITableView创建Delegate和DataSource. 简介CBTableViewDataSource是一个轻量级的用于快速创建UITableView的DataSource和Delegate的框架.它提供了一些方便的API,帮助用户以一种快速和有逻辑的方式创建DataSource和Delegate. 最偷懒的使用方式如下:[_tableView cb_makeSectionWithData:self.viewModel.data andCellClass:[Cus

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

iOS开发中收键盘是十分常用的功能,只需一行代码即可为ViewController添加工具条收键盘功能 更重要的是使用catogory,无代码污染. 代码 // UITextField+keyboard.h // TextFieldKeyBord // // Created by luo.h on 15/10/8. // Copyright © 2015年 l.h. All rights reserved. // #import <UIKit/UIKit.h> @interface UITex