Efficiently find a value in a matrix
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
John Gilmore
le 26 Mar 2021
Commenté : John Gilmore
le 29 Mar 2021
Hey all,
So I have a simple 1D matrix that I'm trying to find a specific value in. I know of a way to do it, but my main question is if anyone knows of a more effcient way? As of current, I'm using as part of an operation that occurs on the order of millions or even billions of times, and using the matlab profiler it's told me that this is far and beyond the most inefficient part of the whole process.
This is how I currently do it...the third line take up ~60% of my run time
DummyData = [1,3,5,7,9];
ValueToFind = 3;
[~,Index] = min(abs(DummyDaya - ValueToFind));
2 commentaires
Stephen23
le 26 Mar 2021
If you want to "find a specific value" why are you using code that just finds the closest value?
Réponse acceptée
weikang zhao
le 27 Mar 2021
From the perspective of computational complexity, your code can no longer be optimized. You can seek help from GPU acceleration or parallel computing.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Logical 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!