Create location Index from cell arrays

1 vue (au cours des 30 derniers jours)
Brian
Brian le 17 Juil 2012
I have a small piece of code that loops through an array and creates an Index location of that value in another cell array. According to the code profiler, this small little loop is taking up 75% of the time of my entire script. I have a smaller cell array (Mutual Fund Portfolio) called 'FundHlds'. What I do with this loop is find the location of each identifer from this array in my larger list, another cell array called 'UniqueList'. Once I create this Index, I can then compare everything in my current portfolio to the information contained in the UniqueList cell array via the Index. I'd like to get rid of this loop method because it's very slow, and the help documentation states that strmatch will be going away in the future. Does anyone know a better way to do this?
for t = 1:length(FundHlds)
bl(t,1) = strmatch(FundHlds(t),UniqueList);
end
Thanks a lot, Brian

Réponse acceptée

Walter Roberson
Walter Roberson le 17 Juil 2012
[tf, idx] = ismember(FundHlds, UniqueList);
  1 commentaire
Brian
Brian le 17 Juil 2012
Excellent. I had never used the ismmeber command for an Index before. In fact I don't even know if I had used it with text.
Thanks much

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by