當前位置:編程學習大全網 - 源碼下載 - 張德峰源代碼

張德峰源代碼

妳做的叫做“小波分析的信號奇異性檢測”。

小波在這個領域確實有應用。建議妳直接去圖書館借《MATLAB小波分析(張德峰等人主編)》(第二版)。不知道第壹版有沒有。其中壹節專門討論如何用小波檢測第壹類不連續點和第二類不連續點,並且有消除奇異點的方法。說得詳細壹點。

根據妳的補充問題,我覺得妳可以用歐氏距離作為波動的度量。具體程序如下:

數據=[...

20000101 1221790 794164 427626

20000102 1282410 833566.4 448843.6?

20000103 1241980 807287 434693?

20000104 1265880 822822 443058?

20000105 1301360 767802 533558?

20000106 1298670 727255 571415

20000107 1273770 700573.5 573196.5

20000108 1300620 845403 455217?

20000109 1301750 846138 455612?

20000110 1318300 856895 461405?

20000111 1327550 862908 464642?

20000112 1356910 800577 556333

20000113 1329360 744442 584918

20000114 1312580 721919 590661

20000115 1330460 864799 465661

20000116 1416710 855861.4 460848.6?

20000117 1293410 840717 452693?

20000118 1303150 847047.4 456102.6?

20000119 1304690 769767 534923?

20000120 1301800 729008 572792

];

日期=數據(:,1)-20000000;

data=data(:,2:end);

x 1 =數據(:,1);

x2 =數據(:,2);

x3 =數據(:,3);

x 1 _ m =均值(x 1);

x2 _ m =均值(x2);

x3 _ m =均值(x3);

data_m=repmat([x1_m,x2_m,x3_m],size(data,1),1);

temp=(data-data_m)。^2;

temp = sum(temp ')';

莖(日期,溫度);

獲得的結果如下:

可以看到波動最大的是65438+10月6日和65438+10月16。可以自己設置壹個閾值,超過閾值的都視為奇異值。

  • 上一篇:DNF修改器
  • 下一篇:教妳如何在Spring Boot使用RSocket。
  • copyright 2024編程學習大全網