0

通过使用小波工具箱,可以分解和重建时间序列,例如

load leleccum; 
s = leleccum(1:3920); 

% decomposition
[c,l] = wavedec(s,3,'db5');

% Reconstruction
a0 = waverec(c,l,'db5');

由此,如何从系列中删除特定频率?例如,一旦我将序列分解为其频率分量,如何在重建之前从中删除频率,例如每日周期?

具有 24 个单位周期的信号示例:

t = 1:365;
raw =  20+(10-2).*rand(1,length(t)); 
signal_1 = 10*sin(2*pi*t/24); 

y = raw + signal_1; % example data series

% decomposition
[c,l] = wavedec(y,3,'db5');

您将如何从最终系列中删除周期为 24 的信号,即“signal_1”?

4

1 回答 1

1

您需要修改向量c并且lwavedec. 如果要删除某些频率,请找到与这些频率相对应的数据并将其归零。然后调用 callwaverec重构修改后的时间序列。

于 2013-02-13T14:36:04.270 回答