Fast Look-up table

3 次查看(过去 30 天)
T
T 2015-2-26
回答: dpb 2015-2-26
Good morning, I have a long array signal with values x. Now for each of those values x I want to find the closest fit in another array pvalues and return the index. At the moment I am doing it like this:
for a=1:1:length(signal)
tempp=pvalues-abs(signal(a));
[c index1] = min(abs(tempp));
%do stuff with index1
end
But this takes a lot of time (hours)! If I comment all lines and only iterate through the array signal, it is done in 3 seconds. So the problem is finding the index1 value.
Any ideas how to solve this quickly?
Thank you!

回答(1 个)

dpb
dpb 2015-2-26
[~,idx]=min(pdist2(pvalues,abs(signal),'euclidean'));

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by