Fast Look-up table

6 vues (au cours des 30 derniers jours)
T
T le 26 Fév 2015
Réponse apportée : dpb le 26 Fév 2015
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!

Réponses (1)

dpb
dpb le 26 Fév 2015
[~,idx]=min(pdist2(pvalues,abs(signal),'euclidean'));

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by