小波分析进行周期性分析-MATLAB详细步骤(包含计算过程、实部等值线图、方差图绘制)

我不是kk 2024-10-07 16:35:16 阅读 84

步骤一:原始资料的距平处理

       将原始资料系列距平处理,得到距平后的数据系列,放在Excel中备用。

PS:不知道怎么距平的,直接用原始数据也行。

步骤二: 将距平数据导入MATLAB

       1.从 MATLAB导入数据功能把距平数据导入为列向量。

        2.为方便程序调用,可以将导入的列向量另存为.mat文件。

步骤三:边界效应的消除或减小

       1.打开小波分析工具箱

       方式一:命令行窗口输入waveletAnalyzer+回车

       方式二: APP栏直接打开小波分析工具箱

       2.数据延伸处理

       (1)单击右下角的Signal Extension按钮

       (2) 导入原始距平数据:file>>load signal>>选择原始数据

       (3)参数设置: 建议Desired Length为Next Power of 2的两倍;Extension Mode选第二个。然后点击Extend。

 

       (4)保存延伸后的数据:file>>Save Transformed Signal(我这里记为“延伸后的Q”)

 步骤四:计算复小波系数

       1.单击小波分析工具箱左上角的Complex Continuous Wavelet 1-D

       2.导入步骤三的延伸后的数据:file>>Load Signal>>选择“延伸后的Q”,Wavelet建议修改为cmor,然后点击Analyze。

       3.保存分析结果(复小波系数) :file>>Load Signal,我这里记为“复小波系数”

步骤五:计算小波系数的实部、模、模方、方差。

       1.工作区打开复小波系数.mat,里面coefs就是复小波系数,打开之后进一步处理。(扣除延长后的数据,左右两边各删除延长的32列数据。得到“扣除延伸后的复小波系数.mat”,这里面的coefs才是接下来计算需要的复小波系数)

 

       2.各种值计算公式如下 。

shibu=real(coefs);

mo=abs(coefs);

mofang=mo.^2;

fangcha=mean(mofang,2);

        3.最后将它们的值全部复制到Excel中,便于绘图。

步骤六:绘制实部等值线图

       1.将实部数据粘贴到Origin中。

        2.全选数据>>绘图>>等高线图>>等高线图颜色填充。

       3.加以修饰,即完成。

 步骤七:绘制小波方差图

       1.在Excel中操作即可,选中方差数据,选择图表>>X,Y散点图>>带平滑线的散点图。

       PS:为便于看清主周期,可以加上数据标签。

               本文第一主周期为20,第二主周期为10或44(不明显)。

步骤八:绘制主周期趋势图

       1.绘制主周期为n的趋势图就选择实部数据的第n行数据,同样选择图表>>X,Y散点图>>带平滑线的散点图。

       PS:本文绘制主周期为20、10、44的趋势图,可以看出对应的周期分别为14年,7年和29年。同样佐证主周期44的趋势并不明显。

 



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。