时间序列算法理论及python实现(2-python实现)

2023-11-17

如果你在寻找时间序列是什么?如何实现时间序列?那么请看这篇博客,将以通俗易懂的语言,全面的阐述时间序列及其python实现。

时间序列算法理论详见我的另一篇博客:时间序列算法理论及python实现 - 知-青 - 博客园

 

5 Python实现ARIMA模型

下面应用以上理论知识,对表6中2015/1/1~2015/2/6某餐厅的销售数据进行建模。

就餐饮企业而言,经常会碰到如下问题。

由于餐饮行业是胜场和销售同时进行的,因此销售预测对于餐饮企业十分必要。如何基于菜品历史销售数据,做好餐销售预测,以便减少菜品脱销现象和避免因备料不足而造成的生产延误,从而减少菜品生产等待时间,提供给客户更优质的服务,同事可以减少安全库存量,做到生产准时制,降低物流成本

餐饮销售预测可以看作是基于时间序列的短期数据预测,预测对象为具体菜品销售量

表6 原序列数据

5.1 环境配置

 1 import pandas as pd
 2 import matplotlib.pyplot as plt
 3 from matplotlib.pylab import style
 4 from statsmodels.tsa.stattools import adfuller as ADF
 5 from statsmodels.stats.diagnostic import acorr_ljungbox  # 白噪声检验
 6 from statsmodels.tsa.arima_model import ARIMA
 7 import statsmodels.tsa.api as smt
 8 import seaborn as sns
 9 style.use('ggplot')
10 plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
11 plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号

要安装的环境有点小多,需要提前安装好。

5.2 导入数据

1 # 参数初始化
2 discfile = './data/arima_data.xls'
3 forecastnum = 5
4 
5 # 读取数据,指定日期列为指标,Pandas自动将“日期”列识别为Datetime格式
6 data = pd.read_excel(discfile, index_col=u'日期')

代码和数据将会公布在Github,请到文末链接。

5.3 检验序列的平稳性

 1 # 时序图
 2 import matplotlib.pyplot as plt
 3 plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
 4 plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
 5 data.plot()
 6 plt.show()
 7 
 8 # 自相关图
 9 from statsmodels.graphics.tsaplots import plot_acf
10 plot_acf(data).show()
11 
12 # 平稳性检测
13 from statsmodels.tsa.stattools import adfuller as ADF
14 print(u'原始序列的ADF检验结果为:', ADF(data[u'销量']))
15 # 返回值依次为adf、pvalue、usedlag、nobs、critical values、icbest、regresults、resstore

图3 原始序列的时序图

图4 原始序列的自相关图

原始时间序列的单位根检验

表7 原始序列的单位根检验

图3时序图显示该序列具有明显的单调递增趋势,可以判断为是非平稳序列;图4的自相关图显示自相关系数长期大于零,说明序列间具有很强的长期相关性;表7单位根检验统计量对应的P值显著大于0.05,最终将该序列判断为非平稳序列(非平稳序列一定不是白噪声序列)。

5.4 对原始序列进行一阶差分,并进行平稳性和白噪声检验

5.4.1 对一阶差分后的序列再次做平稳性判断

1 # 差分后的结果
2 D_data = data.diff().dropna()
3 D_data.columns = [u'销量差分']
4 D_data.plot()  # 时序图
5 plt.show()
6 plot_acf(D_data).show()  # 自相关图
7 from statsmodels.graphics.tsaplots import plot_pacf
8 plot_pacf(D_data).show()  # 偏自相关图
9 print(u'差分序列的ADF检验结果为:', ADF(D_data[u'销量差分']))  # 平稳性检测

 

图5 一阶差分之后序列的时序图

图6 一阶差分之后序列的自相关图

一阶差分之后序列的单位根检验

表8 一阶差分之后序列的单位根检验

结果显示,一阶差分之后的序列的时序图在均值附近比较平稳的波动、自相关图有很强的短期相关性、单位根检验P值小于0.05,所以一阶差分之后的序列是平稳序列。

5.4.2 对一阶差分后的序列做白噪声检验(结果见表5-28)

from statsmodels.stats.diagnostic import acorr_ljungbox
print(u'差分序列的白噪声检验结果为:', acorr_ljungbox(D_data, lags=1))  # 返回统计量和p值

 

表9 一阶差分后的序列的白噪声检验

输出的P值远远小于0.05,所以一阶差分之后的序列是平稳非白噪声序列。

5.5 对一阶差分之后的平稳非白噪声序列拟合ARMA模型

下面进行模型定阶,模型定阶就是确定p和q。

5.5.1 人为识别实现模型定阶

一阶差分后自相关图(见图6)显示出1阶截尾,偏自相关图显示出拖尾性,所以可以考虑用MA(1)模型拟合1阶差分后的序列,即对原始序列建立ARIMA(0,1,1)模型。

图7 一阶差分后序列的偏自相关图

5.5.2 相对最优模型识别

计算ARMA(p,q)。当p和q均小于等于3的所有组合的BIC信息量,取其中BIC信息量达到最小的模型阶数。

 1 from statsmodels.tsa.arima_model import ARIMA
 2 
 3 data[u'销量'] = data[u'销量'].astype(float)
 4 # 定阶
 5 pmax = int(len(D_data) / 10)  # 一般阶数不超过length/10
 6 qmax = int(len(D_data) / 10)  # 一般阶数不超过length/10
 7 bic_matrix = []  # bic矩阵
 8 for p in range(pmax + 1):
 9     tmp = []
10     for q in range(qmax + 1):
11         try:  # 存在部分报错,所以用try来跳过报错。
12             tmp.append(ARIMA(data, (p, 1, q)).fit().bic)
13         except:
14             tmp.append(None)
15     bic_matrix.append(tmp)
16 
17 bic_matrix = pd.DataFrame(bic_matrix)  # 从中可以找出最小值
18 
19 p, q = bic_matrix.stack().idxmin()  # 先用stack展平,然后用idxmin找出最小值位置。
20 print(u'BIC最小的p值和q值为:%s、%s' % (p, q))

 

计算完成BIC矩阵如下(绘制程序在主程序,以上程序仅仅只有计算)

图8 矩阵热度图

P值为0、q值为1时最小BIC值为:430.1374。p、q定阶完成!

5.6 模型检验

用AR(1)模型拟合一阶差分后的序列,即对原始序列建立ARIMA(0,1,1)模型。虽然两种方法建立的模型是一样,但模型是非唯一的,可以检验ARIMA(1,1,0)和ARIMA(1,1,1),这两个模型也能通过检验。

下面对一阶差分后的序列拟合AR(1)模型进行分析。

(1)模型检验。残差为白噪声序列,p值为:0.627016

(2)参数检验和参数估计见表10。

表10 模型参数

5.7 模型预测

1 model = ARIMA(data, (p, 1, q)).fit()  # 建立ARIMA(0, 1, 1)模型
2 model.summary2()  # 给出一份模型报告
3 model.forecast(5)  # 作为期5天的预测,返回预测结果、标准误差、置信区间。

 

应用ARIMA(0,1,1)对表11中的2015/1/1~2015/2/6某餐厅的销售数据做为期5天的预测,结果如下。

表11 预测结果

需要说明的是,利用模型向前预测的时期越长,预测误差将会越大,这是时间预测的典型特点。

6 文献

王黎明,王连等. 应用时间序列分析

张良均,王路,谭立云,苏剑林. Python数据分析与挖掘实战

python时间序列分析 - 大熊猫淘沙 - 博客园

机器学习_时间序列预测分析算法 | FEI's Blog

ARIMA模型的拖尾截尾问题 - CSDN博客

时间序列初级理论篇 - CSDN博客

大数据时间序列分析、建模与预测系列 第一部分: 数据准备

Complete guide to create a Time Series Forecast (with Codes in Python)

时间序列预测如何变成有监督学习问题? - 云+社区 - 腾讯云

时间序列 - 用户指南| 阿里云

 

7 附录:程序及数据

说明:为了方便调用,我把所有程序都封装成函数,调用极其方便只用改动很小的参数。

  1 # -*- coding:utf-8 -*-
  2 # @Time    : 2018/7/11 15:18
  3 # @Author  : yuanjing liu
  4 # @Email   : lauyuanjing@163.com
  5 # @File    : ts_arima.py
  6 # @Software: PyCharm
  7 # arima时序模型
  8 
  9 import pandas as pd
 10 import matplotlib.pyplot as plt
 11 from matplotlib.pylab import style
 12 from statsmodels.tsa.stattools import adfuller as ADF
 13 from statsmodels.stats.diagnostic import acorr_ljungbox  # 白噪声检验
 14 from statsmodels.tsa.arima_model import ARIMA
 15 import statsmodels.tsa.api as smt
 16 import seaborn as sns
 17 style.use('ggplot')
 18 plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
 19 plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
 20 
 21 
 22 # 对原始数据进行ACF、PACF检验
 23 def tsplot(y, lags=None, title='', figsize=(14, 8)):
 24     fig = plt.figure(figsize=figsize)
 25     layout = (2, 2)
 26     ts_ax = plt.subplot2grid(layout, (0, 0))
 27     hist_ax = plt.subplot2grid(layout, (0, 1))
 28     acf_ax = plt.subplot2grid(layout, (1, 0))
 29     pacf_ax = plt.subplot2grid(layout, (1, 1))
 30 
 31     y.plot(ax=ts_ax)
 32     ts_ax.set_title(title)
 33     y.plot(ax=hist_ax, kind='hist', bins=25)
 34     hist_ax.set_title('Histogram')
 35     smt.graphics.plot_acf(y, lags=lags, ax=acf_ax)
 36     smt.graphics.plot_pacf(y, lags=lags, ax=pacf_ax)
 37     [ax.set_xlim(0) for ax in [acf_ax, pacf_ax]]
 38     sns.despine()
 39     fig.tight_layout()
 40     plt.show()
 41     return ts_ax, acf_ax, pacf_ax
 42 
 43 
 44 # 平稳性检测(P值大于0.05,则存在单位根,是不平稳时间序列)
 45 # adf_jy返回值依次为adf、pvalue、usedlag、nobs、critical values、icbest、regresults、resstore
 46 def steady(sdata):
 47     adf_jy = ADF(sdata)  # data[u'销量']
 48     adf_p_value = adf_jy[1]
 49     return adf_jy, adf_p_value
 50 
 51 
 52 # 白噪声检验
 53 def w_noise(wdata):
 54     w_noise = acorr_ljungbox(wdata, lags=1)  # 返回统计量和p值
 55     w_p_value = float(w_noise[1])
 56     return w_noise, w_p_value
 57 
 58 
 59 # 差分后的结果(如果不平稳)
 60 def ts_diff(ddata):
 61     D_data = ddata.diff().dropna()  # dropna是缺失值处理
 62     D_data.columns = [u'1阶差分']
 63     return D_data
 64 
 65 
 66 def ts_arima(tsdata, forenum=5):
 67     tsdata = tsdata.astype(float)
 68     # 定阶
 69     D_data = ts_diff(tsdata)
 70     pmax = int(len(D_data) / 10)  # 一般阶数不超过length/10
 71     qmax = int(len(D_data) / 10)  # 一般阶数不超过length/10
 72     bic_matrix = []  # bic矩阵
 73     for p in range(pmax + 1):
 74         tmp = []
 75         for q in range(qmax + 1):
 76             try:  # 存在部分报错,所以用try来跳过报错。
 77                 tmp.append(ARIMA(tsdata, (p, 1, q)).fit().bic)
 78             except:
 79                 tmp.append(None)
 80         bic_matrix.append(tmp)
 81 
 82     bic_matrix = pd.DataFrame(bic_matrix)  # 从中可以找出最小值
 83 
 84     # 可视化BIC矩阵
 85     fig, ax = plt.subplots(figsize=(10, 8))
 86     ax = sns.heatmap(bic_matrix,
 87                      mask=bic_matrix.isnull(),
 88                      ax=ax,
 89                      annot=True,
 90                      fmt='.2f',
 91                      )
 92     ax.set_title('BIC')
 93     plt.show()
 94 
 95     p, q = bic_matrix.stack().idxmin()  # 先用stack展平,然后用idxmin找出最小值位置。
 96     # print(u'BIC最小的p值和q值为:%s、%s' % (p, q))
 97 
 98     model = ARIMA(tsdata, (p, 1, q)).fit()  # 建立ARIMA(0, 1, 1)模型
 99     summary = model.summary2()  # 给出一份模型报告
100     forecast = model.forecast(forenum)  # 作为期forenum天的预测,返回预测结果、标准误差、置信区间。
101     return bic_matrix, p, q, model, summary, forecast
102 
103 
104 # 测试
105 # 读取数据
106 discfile = '../data/arima_data.xls'
107 forecastnum = 5
108 data = pd.read_excel(discfile, index_col=u'日期')
109 ddata = data[u'销量']
110 # 检验
111 ts_ap = tsplot(ddata, title='A Given Training Series', lags=20)  # ACF 和 PACF 检验
112 s_total, s_p = steady(ddata)  # 平稳性检验
113 w_total, w_p = w_noise(ddata)
114 # 差分
115 dif_data = ts_diff(ddata)
116 # arima模型
117 bic_matrix1, p1, q1, model1, summary, forecast = ts_arima(ddata)
ts_arima_main

 


转载说明

1、本人博客纯属技术积累和分享,欢迎大家评论和交流以求共同进步。

2、在无明确说明下,博客可以转载以供个人学习和交流,但是要附上出处。

3、如果原创博客使用涉及商业/公司行为请邮件(1547364995@qq.com)告知,一般情况均会及时回复同意。

4、如果个人博客中涉及他人文章我会尽力注明出处,但受限于能力并不能保证所有引用之处均能够注明出处,如有冒犯,请您及时邮件告知以便修改,并于此提前向您道歉。

5、转载过程中如有涉及他人作品请您与作者联系。

6、所有文章(不限于原创)仅为个人见解,个人只能尽量保证正确,如有错误您需要自负责任,并请您留下评论提出错误之处以便及时更正,惠泽他人,谢谢

转载于:https://www.cnblogs.com/Yuanjing-Liu/p/9284875.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

时间序列算法理论及python实现(2-python实现) 的相关文章

  • Python argparse:需要两个并存的位置参数

    使用 argparse 如何指定我希望两个位置参数一起出现或根本不出现 IE 我希望我的使用字符串看起来像 Usage FooBar py h FOO BAR 正如 hpaulj 所建议的 这是您可以使用的解决方案 In 1 import
  • 导入错误:没有名为请求的模块

    我尝试导入requests https requests readthedocs io import requests 但我收到一个错误 导入错误 没有名为请求的模块 Requests 不是内置模块 默认的 python 安装不附带 因此您
  • 在python中发送多个文件

    我是 python 新手 我正在尝试以下操作 我有两个 calsess Server py and Client py我想将服务器目录中存在的所有文件发送到客户端的某个目录 IE C ServerDir file1 txt C Server
  • 窗口多维 Tensorflow 数据集

    我有形状的二维数据m by n我想要的窗口大小w沿着第一个轴进入数据集m w许多二维数组 每个数组的大小w by n 例如如果数据是 0 1 2 3 4 5 6 7 8 9 10 11 然后我想将其窗口化 0 1 2 3 4 5 6 7 8
  • 为什么我的 jupyter 笔记本中不需要“%matplotlib inline”?

    我只是想理解为什么我的 jupyter 安装不需要我运行 matplotlib inline 根据我读过的所有内容 我应该运行它才能将我的绘图内联到我的 jupyter 笔记本中 但事实是 无论我是否运行 matplotlib inline
  • 在 GUI 中显示 DHT11 的温度 - 自动刷新?

    Python 新手 开始接触 DHT11 温度 湿度传感器 Raspberry Pi 3 和 Python 3 我正在使用标准Adafruit DHT11 库 https github com adafruit Adafruit Pytho
  • 在 cherokee 和 uwsgi 上部署 Flask [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我正在尝试部署一个使用 cherokee 和 uwsgi 开发的 Flask Web 应用程序 我安装了 cherokee 和 uwsgi 并正在工作
  • Python bash 管道

    我想将 python 脚本的输出通过管道传输到 bash 脚本 到目前为止我所做的是尝试使用os popen sys subprocess 并试图给出一个管道的例子 os popen echo P 1 1 591336 4927369 1
  • 为什么 Contextmanager 会抛出运行时错误“生成器在 throw() 之后没有停止”?

    在我的 utility py 中 contextmanager def rate limit protection max tries 3 wait 300 tries 0 while max tries gt tries try yiel
  • 这个 Python 字符串切片语句中的两个冒号的用途是什么?

    例如 str hello str 1 3 我在 Python 文档中哪里可以找到它 in 序列描述 http docs python org library stdtypes html index 510 s i j k slice of
  • MAMP Python-MySQLdb 问题:调用 Python 文件后 libssl.1.0.0.dylib 的路径发生变化

    我正在尝试使用 python MySQLdb 访问 MAMP 服务器上的 MySQL 数据库 当我最初尝试使用 python sql 调用 Python 文件来访问 MAMP 上的数据库时 我得到了image not found关于错误li
  • BeautifulSoup - 抓取论坛页面

    我正在尝试抓取论坛讨论并将其导出为 csv 文件 其中包含 线程标题 用户 和 帖子 等行 其中后者是每个人的实际论坛帖子 我是 Python 和 BeautifulSoup 的初学者 所以我对此感到非常困难 我当前的问题是 csv 文件中
  • 在循环中动态添加方法时的范围问题

    我有一个 API 用于分析我的锻炼数据 我抓取的数据 跑卫 http runkeeper com 的网站 我的主类是一个子类pandas DataFrame 它基本上是表格数据的容器 它支持按列名索引 返回列值的数组 我想根据数据中存在的
  • 在Python中将字符串转换为变量? [复制]

    这个问题在这里已经有答案了 我对 python 和编程都很陌生 并且已经尝试弄清楚如何做到这一点有一段时间了 这是我需要帮助的内容 y 0 x 2 p01 hello p02 bye print p str y str x 输出当然是 p0
  • 虎鲸失踪

    使用plotly 导出静态图表时遇到小问题 Plotly 无法正确识别我已安装 orca 并且仍然存在与缺少 orca 相关的错误 我尝试更改 orca 目录 但它仍然无法正常工作 谁知道出了什么问题吗 My code import plo
  • Python Pandas 系列失败日期时间

    我认为这一定是 pandas 的失败 有一个 pandas 系列 v 18 1 和 19 如果我为该系列分配一个日期 第一次将其添加为 int 错误 第二次将其添加为 int 错误 添加为日期时间 正确 我无法理解原因 例如使用以下代码 i
  • Python Flask 不更新图像[重复]

    这个问题在这里已经有答案了 这里有一些关于图像的 Flask 问题 但没有一个能解决我的问题 我有一个应用程序可以创建图像 保存它 然后显示它 一次 它应该多次执行此操作 每次更改图像时 它应该加载新图像 它不是 它只显示与其显示的文件名关
  • Python - 使用 BeautifulSoup 从 URL 列表中抓取文本的最简单方法

    使用 BeautifulSoup 从几个网页 使用 URL 列表 中抓取文本的最简单方法是什么 有可能吗 最好的 乔治娜 import urllib2 import BeautifulSoup import re Newlines re c
  • 无法让我的脚本自动生成一些值以在有效负载中使用

    我创建了一个脚本 通过随后发送两个 https 请求来从目标页面获取 html 元素 我的脚本可以完美地完成这件事 但是 我必须从 chrome 开发工具复制四个值来填充其中的四个键payload为了发送最终的http请求到达目标页面 这是
  • 使用和不使用 SciPy 计算 k 组合的数量

    我对这个函数感到困惑combSciPy 的 http docs scipy org doc scipy 0 14 0 reference generated scipy misc comb html看起来比简单的 Python 实现要慢 这

随机推荐

  • 程序员的自我修养--链接、装载与库

    中国科学技术大学软件学院 周艾亭 原创作品版权所有转载请注明出处 第一次接触 程序员的自我修养 的时候 的确怀有一种疑惑的态度的 因为潜意识告诉我 在计算机这一行 更强调的是实践动手 而XXX修养的显然不属于动手操作类 至少不是太适合我的需
  • 数据同步方案

    mysql 数据同步到elastic中 本文中不提及实现 仅提供方案 增量数据同步 方案一 通过logstash 官方提供的工具 快速实现数据同步 值得注意的是选择logstash时需要和elastic的版本做对应 由于elastic 版本
  • 多线程经典案例(生产者--消费者)

    多线程开发中有一个经典的操作案例 就是 生产者 消费者 案例 生产者不的生产产品 消费者不断地取走产品 此案例涉及线程同步 线程休眠 线程等待 线程唤起等操作以及之间是如何搭配使用的方法 示例讲解 本示例模拟中生产者由 厨师 担任 消费者由
  • 如何利用 Selenium 对已打开的浏览器进行爬虫

    大家好 在对某些网站进行爬虫时 如果该网站做了限制 必须完成登录才能展示数据 而且只能通过短信验证码才能登录 这时候 我们可以通过一个已经开启的浏览器完成登录 然后利用程序继续操作这个浏览器 即可以完成数据的爬取了 具体操作步骤如下 1 1
  • QT循环队列实时处理数据(二)

    上一篇多线程介绍的是 QT多线程处理机制 这篇 将对接收数据 实时处理进行分析 QT通过socket通信 从接收缓冲区中读取数据 交给线程进行处理 那么问题来了 如果线程还没有处理完数据 则线程就没有办法继续从缓冲区中取数 那么当数据量过大
  • vue父子组件之间的传值(子传父,父传子)

    vue父子组件之间的传值 子传父 父传子 前提首先需要了解vue中组件之间的父子关系 主组件mainPage vue
  • 个性化定制界面和极简版原装界面,哪一个你用起来更加顺手呢

    个性化定制界面是根据用户的需求和喜好进行定制的 具有很高的灵活性和可定制性 用户可以自由选择界面的颜色 布局 字体等 以及添加或删除特定功能 这种界面能够根据用户的个人喜好和习惯进行定制 使得用户在使用过程中更加舒适和顺手 以下是一些可能的
  • 【数据结构】&&【C++】平衡搜索二叉树的模拟实现(AVL树)

    数据结构 C 平衡搜索二叉树的模拟实现 AVL树 一 AVL树的性质 二 AVL树的模拟实现 AVL树结点的定义 AVL树的插入 平衡因子的更新 左单旋 右单旋 双旋 左右旋 右左旋 AVL树的删除 检查是否是AVL树 三 完整代码 一 A
  • Tp5 left join 带条件 数据不返回

    背景 下面两种方式都是在查询吸毒人员的基本信息 pa account 表示该吸毒人员的评估小组 一般情况下 录入吸毒人员基础信息都会录入其关联的评估小组 但是部分也不录入 理论上 无论评估小组有没有录入 left join 都要返回左表ad
  • 微信小程序:日历模块页面

    文章目录 1 前言 2 功能需求 3 界面展示 4 部分代码展示 5 结语 完整项目下载 下载链接 1 前言 在制作背单词打卡小程序中 用户需要方便地查看历史学习信息 为了使页面美观并保持交互简洁 采用日历作为日期选择器是极为必要的 本指南
  • nginx中间件常见漏洞总结

    nginx中间件常见漏洞总结 1 中间件漏洞的概念 1 1 中间件 容器 服务器的基本概念辨析 2 Nginx 配置错误导致漏洞 2 1 uri 导致的CRLF注入漏洞 2 1 1 漏洞成因 2 1 2 利用方式 2 1 3 修改方案 2
  • 程序员必备技能-使用git把github的代码下载到本地使用

    在代码的学习过程中 难免需要看下github上的优秀项目 或者在参加某个培训班的时候 老师的示例代码存放在github中 想在本地的IDE中跑跑试试 这篇文章提供一个简单的获取github项目在自己的IDE中打开的方法 目录 一 获取git
  • STM32F103ZET6【HAL开发】STM32CUBEMX------3.2高级定时器输出带死区的互补PWM

    一 STM32F103只有高级定时器才能输出互补的PWM波形 定时器的对应IO如下表 二 下面以TIM1为例 演示三对带死区的PWM波形在STM32CUBEMX里面的配置 TIM1 CH1 TIM1 CH1N TIM1 CH2 TIM1 C
  • [matlab]10种经典的时间序列预测模型

    matlab 10种经典的时间序列预测模型 本文演示了 10 种不同的经典时间序列预测方法 它们是 自回归 AR 移动平均线 自回归移动平均线 自回归积分移动平均线 ARIMA 季节性自回归积分移动平均线 SARIMA 具有外生回归量的季节
  • R语言3.11 因子分析因子旋转

    因子旋转 目的 寻找每个主因子的实际意义 如果各主因子的典型代表变量不突出 就需要进行旋转 使因子载荷矩阵中载荷的绝对值向0和1两个方向分化 方法 正交旋转Varimax 最大方差正交旋转 斜交旋转Promax Fa2 factanal X
  • 集成学习-Adaboost

    Author 鲁力 Email jieyuhuayang foxmail com Datawhale Adaboost 算法简介 集成学习 ensemble learning 通过构建并结合多个学习器 learner 来完成学习任务 通常可
  • Keras和Tensorflow(CPU)安装、Pytorch(CPU和GPU)安装以及jupyter使用虚拟环境

    微信公众号 数学建模与人工智能 Keras和Tensorflow CPU 安装 Pytorch CPU和GPU 安装 Keras和Tensorflow CPU 安装 一 安装我用的是清华大学源 二 深度学习模型保存与加载 三 错误 Tens
  • matlab中的掩膜抠图

    改进版 矩阵中的循环操作非常耗时 so 用矩阵逻辑与操作替代for循环 one ones s img 1 s img 2 segM segM uint8 one for i 1 s img 1 for j 1 s img 2 if segM
  • 微信小程序16进制颜色码

    颜色码http www w3school com cn cssref css colornames asp
  • 时间序列算法理论及python实现(2-python实现)

    如果你在寻找时间序列是什么 如何实现时间序列 那么请看这篇博客 将以通俗易懂的语言 全面的阐述时间序列及其python实现 时间序列算法理论详见我的另一篇博客 时间序列算法理论及python实现 知 青 博客园 5 Python实现ARIM