![]() |
在Matlab中对向量进行降采样时如何消除偏差
我有一组向量,这些向量包含任意形状,例如具有单个最大值的三角形脉冲。我需要通过整数因子对这些向量进行下采样。相对于向量长度的最大值位置应保持不变。
下面的代码显示,当我这样做时,下采样步骤引入了bias=-0.0085 ,平均应该为零。 偏差似乎并没有太大变化,具体取决于向量的数量(尝试在200到800个向量之间)。 我还尝试了不同的重采样功能(例如downsample和decimate以得到相同的结果。 datapoints = zeros(1000,800); for ii = 1:size(datapoints,2) datapoints(ii:ii+18,ii) = [1:10,9:-1:1]; end %downsample each column of the data datapoints_downsampled = datapoints(1:10:end,:); [~,maxinds_downsampled] = max(datapoints_downsampled); [~,maxinds] = max(datapoints); %bias needs to be zero bias = mean(maxinds/size(datapoints,1)-maxinds_downsampled/size(datapoints_downsampled,1)) [B]如何消除这种偏见?仅给定一个向量,是否有办法确定其大小?[/B] [B]它从何而来?[/B] [url=https://stackoverflow.com/q/59088846]更多&回答...[/url] |
所有时间均为北京时间。现在的时间是 21:24。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.