我有一个非常大的数组,每列是一个不同的信号,有没有一种方法可以有效地做到这一点,而无需使用如下所示的循环?
in_data=rand(2000,100000);
for j=1:size(in_data,2)
in_data(:,j)=highpass(in_data(:,j),100,1000);
end
答案 0 :(得分:3)
in_data = highpass(in_data,100,1000)
documentation的内容为:
y = highpass(x,wpass)
使用高通滤波器对输入信号x
进行滤波,该滤波器的归一化通带频率为wpass
,单位为πrad /样本。高通使用阻带衰减为60 dB的最小阶滤波器,并补偿滤波器引入的延迟。 如果x
是矩阵,该函数将独立过滤每一列。
强调我的。 Ergo:默认情况下为列式。