如何使用“重新取样”功能?

15的观点(30天)
hollyhue
hollyhue 2021年1月4日
评论道: hollyhue2021年1月8日
我有一组数据(响应与时间)2000 +数据点,收集的500秒。我想减少数据点的数量到100只使用收集的数据点每5秒,但我的采样频率不提供一个数据点每隔5秒。MATLAB搜索答案之后,似乎很多人使用 重新取样 函数。我有几个问题:
  1. 有什么区别使用重新取样函数和线性插值吗?
  2. 我不明白upsampling (p)和将采样(q)的因素。如果我设置p = 1和q = 1,我只是会线性插值吗?减少边缘效应p和q重要?我发现,如果我把p和q为1,没有边缘效应,这是为什么呢?请参见下面的例子。
我试图实现重新取样函数如下所示在开始和结束与填充数据所显示 这个MATLAB回答 :
fs = 1/5;
x =时间;%时间向量在秒
y =反应;变化百分比响应向量
xpad = [repmat (x (1), 1, 20) ';x;repmat (x(结束),1,20)');
tpad = [repmat (y (1), 1, 20) ';y;repmat (y(结束),1,20)');
(yB, xB) =重新取样(tpad、xpad fs1、1, 1,“线性”);% p = 1 = 1
7评论
hollyhue
hollyhue 2021年1月8日
我也喜欢用原始数据而不是插值,但我需要相同的时间间隔的长度。这个方法让我稍微不同的区间长度,虽然非常接近对方。重采样函数给我正确的区间长度,但是我不能明白为什么p = 1和q = 1是唯一upsampling和downsampling因素不会引起边缘效应。有人知道为什么吗?或如何验证这些因素?

登录置评。

答案(0)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!