【MATLAB第33期】源码分享 | 基于MATLAB的时间序列平稳性检测方法

简介: 【MATLAB第33期】源码分享 | 基于MATLAB的时间序列平稳性检测方法

【MATLAB第33期】源码分享 | 基于MATLAB的时间序列平稳性检测

一、平稳性检测

1、KPSS测试

2、ADF测试

3、PP测试

若adf1或者kpss0或者pp==0,则表明是平稳时间序列。
反之,则表明是非平稳时间序列。

二、代码展示

clc,
clear all,
close all,
format short,
%% 1.从源读取数据(Excel文件,*.xlsx格式)并打印
input = readtable('ch02_EXAMPLE 3.xlsx', 'Sheet',"Sheet1",...
                                'Range',"A:C");   %选择Sheet1 表格,A-C列数据
ts = timeseries(input.DATA,input.DATE);  %建立时间序列数据 ,第一列时间,第二列数据
ts.Name = 'CPI数据';  %数据标题
ts.TimeInfo.Units = 'years';
ts.TimeInfo.StartDate = '1954';     % 设置开始时间(年份)
ts.TimeInfo.Format = 'yyyy';       % 设置在x轴上显示的格式
ts.Time = ts.Time - ts.Time(1); %
plot(ts, 'Color', '#7E2F8E', 'LineJoin','round', 'Marker', '.')
xlabel('Time (years)', 'fontsize',12)
ylabel('INF_C', 'fontsize',12)
%% 1.平稳性,KPSS测试
[kpss_H, kpss_pVal, kpss_stat, kpss_crit] = kpsstest(input.DATA,'trend',true);
kpss_test_results={'测试拒绝决定H值','p值','统计量','临界值';...
                                    kpss_H, kpss_pVal, kpss_stat, kpss_crit}
%% 2.平稳性,ADF测试
[adf_H, adf_pval, adf_stat, adf_crit] = adftest(input.DATA);
ADF_test_results={'测试拒绝决定H值','p值','统计量','临界值';...
                                    adf_H, adf_pval, adf_stat, adf_crit}
%% 3.平稳性,PP测试
[pp_H, pp_pVal, pp_stat, pp_crit] = pptest(input.DATA);
PP_test_results={'测试拒绝决定H值','p值','统计量','临界值';...
                                    pp_H, pp_pVal, pp_stat, pp_crit}

三、效果展示

1.kpss_test_results :

{'测试拒绝决定H值'}    {'p值'   }    {'统计量' }    {'临界值' }
{[            1]}    {[0.0100]}    {[0.6618]}    {[0.1460]}

2.ADF_test_results :

{'测试拒绝决定H值'}    {'p值'   }    {'统计量'  }    {'临界值'  }
{[            0]}    {[0.3255]}    {[-0.8769]}    {[-1.9476]}

3.PP_test_results :

{'测试拒绝决定H值'}    {'p值'   }    {'统计量'  }    {'临界值'  }
{[            0]}    {[0.3255]}    {[-0.8769]}    {[-1.9476]}

四、代码及案例数据获取

后台私信回复“33”即可获得下载链接

相关文章
|
2天前
|
算法
基于小波变换和峰值搜索的光谱检测matlab仿真,带GUI界面
本程序基于小波变换和峰值搜索技术,实现光谱检测的MATLAB仿真,带有GUI界面。它能够对CO2、SO2、CO和CH4四种成分的比例进行分析和提取。程序在MATLAB 2022A版本下运行,通过小波分解、特征提取和峰值检测等步骤,有效识别光谱中的关键特征点。核心代码展示了光谱数据的处理流程,包括绘制原始光谱、导数光谱及标注峰值位置,并保存结果。该方法结合了小波变换的时频分析能力和峰值检测的敏锐性,适用于复杂信号的非平稳特性分析。
|
2天前
|
机器学习/深度学习 算法 安全
基于深度学习的路面裂缝检测算法matlab仿真
本项目基于YOLOv2算法实现高效的路面裂缝检测,使用Matlab 2022a开发。完整程序运行效果无水印,核心代码配有详细中文注释及操作视频。通过深度学习技术,将目标检测转化为回归问题,直接预测裂缝位置和类别,大幅提升检测效率与准确性。适用于实时检测任务,确保道路安全维护。 简介涵盖了算法理论、数据集准备、网络训练及检测过程,采用Darknet-19卷积神经网络结构,结合随机梯度下降算法进行训练。
|
5天前
|
机器学习/深度学习 数据采集 算法
基于GWO灰狼优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目基于MATLAB2022a,展示了时间序列预测算法的运行效果(无水印)。核心程序包含详细中文注释和操作视频。算法采用CNN-GRU-SAM网络,结合灰狼优化(GWO),通过卷积层提取局部特征、GRU处理长期依赖、自注意力机制捕捉全局特征,最终实现复杂非线性时间序列的高效预测。
|
1月前
|
算法 Serverless
基于魏格纳函数和焦散线方法的自加速光束matlab模拟与仿真
本项目基于魏格纳函数和焦散线方法,使用MATLAB 2022A模拟自加速光束。通过魏格纳函数法生成多种自加速光束,并设计相应方法,展示仿真结果。核心程序包括相位和幅度的计算、光场分布及拟合分析,实现对光束传播特性的精确控制。应用领域涵盖光学成像、光操控和光束聚焦等。 关键步骤: 1. 利用魏格纳函数计算光场分布。 2. 模拟并展示自加速光束的相位和幅度图像。 3. 通过拟合分析,验证光束加速特性。 该算法原理基于魏格纳函数描述光场分布,结合数值模拟技术,实现对光束形状和传播特性的精确控制。通过调整光束相位分布,可改变其传播特性,如聚焦或加速。
|
1月前
|
机器学习/深度学习 数据采集 算法
基于GA遗传优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目基于MATLAB2022a实现时间序列预测,采用CNN-GRU-SAM网络结构。卷积层提取局部特征,GRU层处理长期依赖,自注意力机制捕捉全局特征。完整代码含中文注释和操作视频,运行效果无水印展示。算法通过数据归一化、种群初始化、适应度计算、个体更新等步骤优化网络参数,最终输出预测结果。适用于金融市场、气象预报等领域。
基于GA遗传优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
|
2月前
|
机器学习/深度学习 算法
基于遗传优化的双BP神经网络金融序列预测算法matlab仿真
本项目基于遗传优化的双BP神经网络实现金融序列预测,使用MATLAB2022A进行仿真。算法通过两个初始学习率不同的BP神经网络(e1, e2)协同工作,结合遗传算法优化,提高预测精度。实验展示了三个算法的误差对比结果,验证了该方法的有效性。
|
2月前
|
机器学习/深度学习 数据采集 算法
基于PSO粒子群优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目展示了基于PSO优化的CNN-GRU-SAM网络在时间序列预测中的应用。算法通过卷积层、GRU层、自注意力机制层提取特征,结合粒子群优化提升预测准确性。完整程序运行效果无水印,提供Matlab2022a版本代码,含详细中文注释和操作视频。适用于金融市场、气象预报等领域,有效处理非线性数据,提高预测稳定性和效率。
|
2月前
|
机器学习/深度学习 算法
基于改进遗传优化的BP神经网络金融序列预测算法matlab仿真
本项目基于改进遗传优化的BP神经网络进行金融序列预测,使用MATLAB2022A实现。通过对比BP神经网络、遗传优化BP神经网络及改进遗传优化BP神经网络,展示了三者的误差和预测曲线差异。核心程序结合遗传算法(GA)与BP神经网络,利用GA优化BP网络的初始权重和阈值,提高预测精度。GA通过选择、交叉、变异操作迭代优化,防止局部收敛,增强模型对金融市场复杂性和不确定性的适应能力。
208 80
|
2月前
|
机器学习/深度学习 算法 Python
基于BP神经网络的金融序列预测matlab仿真
本项目基于BP神经网络实现金融序列预测,使用MATLAB2022A版本进行开发与测试。通过构建多层前馈神经网络模型,利用历史金融数据训练模型,实现对未来金融时间序列如股票价格、汇率等的预测,并展示了预测误差及训练曲线。
|
3月前
|
运维 算法
基于Lipschitz李式指数的随机信号特征识别和故障检测matlab仿真
本程序基于Lipschitz李式指数进行随机信号特征识别和故障检测。使用MATLAB2013B版本运行,核心功能包括计算Lipschitz指数、绘制指数曲线、检测故障信号并标记异常区域。Lipschitz指数能够反映信号的局部动态行为,适用于机械振动分析等领域的故障诊断。

热门文章

最新文章