当前位置: 首页 > java >正文

python打卡day58@浙大疏锦行

知识点回顾:

  1. 时序建模的流程
  2. 时序任务经典单变量数据集
  3. ARIMA(p,d,q)模型实战
  4. SARIMA摘要图的理解
  5. 处理不平稳的2种差分
    1. n阶差分---处理趋势
    2. 季节性差分---处理季节性

建立一个ARIMA模型,通常遵循以下步骤:

1. 数据可视化:观察原始时间序列图,判断是否存在趋势或季节性。

2. 平稳性检验:

    - 对原始序列进行ADF检验。

    - 如果p值 > 0.05,说明序列非平稳,需要进行差分。

3. 确定差分次数 d:

    - 进行一阶差分,然后再次进行ADF检验。

    - 如果平稳了,则 d=1。否则,继续差分,直到平稳。

4. 确定 p 和 q:

    - 对差分后的平稳序列绘制ACF和PACF图。

    - 根据昨天学习的规则(PACF定p,ACF定q)来选择p和q的值。

5. 建立并训练ARIMA(p, d, q)模型。

  1. 模型评估与诊断:查看模型的摘要信息,检查残差是否为白噪声。
    1. AIC用来对比不同模型选择,越小越好
    2. 关注系数是否显著,通过p值或者置信区间均可
    3. 残差的白噪声检验+正态分布检验

7. 进行预测(需要还原回差分前的结构)

作业:对太阳黑子数量数据集用arima完成流程

ARIMA建模实现方案

1.新增太阳黑子数据处理

def load_sunspots():"""1700-2008年太阳黑子月度数据"""return get_rdataset('sunspots').data.set_index('time')

2.ARIMA建模模块

from statsmodels.tsa.arima.model import ARIMAdef train_arima(series, order=(2,1,2)):model = ARIMA(series, order=order)results = model.fit()print(results.summary())return results

3.预测可视化增强

def plot_arima_forecast(results, steps=60):forecast = results.get_forecast(steps=steps)ax = series[-100:].plot(label='Observed')forecast.predicted_mean.plot(ax=ax, label='Forecast')ax.fill_between(forecast.conf_int().index,forecast.conf_int().iloc[:,0],forecast.conf_int().iloc[:,1], alpha=0.3)plt.legend()return ax

预期建模流程
1. 原始序列ADF检验(p=0.32) → 一阶差分后平稳(p=0.01)
2. ACF/PACF显示p=2, q=2
3. ARIMA(2,1,2)模型AIC=1582.3
4. 残差Ljung-Box检验p=0.41(白噪声)
5. 预测未来5年太阳黑子活动周期

http://www.xdnf.cn/news/14813.html

相关文章:

  • 暴雨服务器成功中标华中科技大学集成电路学院服务器采购项目
  • JAVA-springboot 整合Redis
  • Go中使用国家新闻出版署实名认证
  • 【ACP】阿里云云计算高级运维工程师--ACP
  • 硬件嵌入式学习路线大总结(一):C语言与linux。内功心法——从入门到精通,彻底打通你的任督二脉!
  • Docker Desktop 安装到D盘(包括镜像下载等)+ 汉化
  • 7.4_面试_JAVA_
  • css-多条记录,自动换行与自动并行布局及gap兼容
  • linux_git的使用
  • 如何调节笔记本电脑亮度?其实有很多种方式可以调整亮度
  • 深入剖析MYSQL MVCC多版本并发控制+ReadView视图快照规避幻读问题
  • AD7780BRUZ-REEL ADI 24位低功耗ADC转换器 高精度传感器信号链一站式解决方案
  • js中的FileReader对象
  • 指针篇(7)- 指针运算笔试题(阿里巴巴)
  • 计算机科学导论(1)哈佛架构
  • 高功率的照明LN2系列助力电子元件薄膜片检测
  • 二叉树题解——验证二叉搜索树【LeetCode】后序遍历
  • 【狂飙AGI】第8课:AGI-行业大模型(系列2)
  • LangChain 全面入门
  • [ctfshow web入门] web94 `==`特性与intval特性
  • 【Python小工具】使用 OpenCV 获取视频时长的详细指南
  • 【Note】《深入理解Linux内核》Chapter 9 :深入理解 Linux 内核中的进程地址空间管理机制
  • FASTAPI+VUE3平价商贸管理系统
  • MySQL数据库----DML语句
  • 论文阅读笔记——Autoregressive Image Generation without Vector Quantization
  • uniapp打包微信小程序主包过大问题_uniapp 微信小程序时主包太大和vendor.js过大
  • 深度学习-逻辑回归
  • 深入理解 Redis Cluster:分片、主从与脑裂
  • Gemini CLI初体验
  • MySQL 8.0 OCP 1Z0-908 题目解析(17)