我有一个32
点的输入数据集。现在,我想通过平均点上的数据将这些32
点转换为240
点。
我考虑绘制我拥有的32
个采样点,然后通过近似绘制曲线并以更高的采样频率获取数据,以获得240
个点。
我无法理解如何在MATLAB中执行此操作。我从一些消息来源获得了帮助,但我无法提出任何解决方案。怎么办呢?
简而言之,我想转换' x'离散数据的样本设置为' y'通过近似信号设置新数据的样本。此处x > y
或x < y
。
答案 0 :(得分:2)
resample
做你想做的事,
newdata = resample(data,240,32);
例如:
a = 1 : 32;
b = resample(a,240,32);
t = 1 : 32;
t1 = linspace(1,32,240);
plot(t,a);hold on;plot(t1,b,'r');
最后的噪音可能是因为过滤器过滤,240/32
过高。
resample
确实很棒,
a = randi(10,[1 100]);
b = resample(a,240,100);
t = 1 : 100;
t1 = linspace(1,100,240);
plot(t,a);hold on;plot(t1,b,'r')