Replacing a nested for-loop

2 Ansichten (letzte 30 Tage)
Ryan
Ryan am 7 Sep. 2013
Hey everyone!
I am doing pairwise comparisons of strings in a cell array using a function that I wrote. Right now I have it in a nested for-loop that looks like this
D = {'string1','string2','stringn'}
for k = 1:numel(D)
for j = k:numel(D)
M(k,j) = myfunction(D{k},D{j});
end
end
This runs fairly slow. My question is there a faster way to do these pairwise comparisons using something like arrayfun?
  3 Kommentare
Ryan
Ryan am 7 Sep. 2013
Sorry about that I edited my question. It is more specific now.
Azzi Abdelmalek
Azzi Abdelmalek am 7 Sep. 2013
what is myfunction?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 7 Sep. 2013
No. arrayfun() uses a for loop internally, so it is no faster.
You should consider vectorizing "myfunction".
  1 Kommentar
Ryan
Ryan am 7 Sep. 2013
Thank you for the comment

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by