How to avoid for loop when indexing?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Mantas Vaitonis
am 2 Jul. 2018
Kommentiert: Mantas Vaitonis
am 2 Jul. 2018
Hello,
I have the following for loop, where pairs(500x10), is there to calculate cc without for loop?
for i=1:500
cc(i,:)=pairs(i,pairs(i,:));
end
4 Kommentare
Stephen23
am 2 Jul. 2018
@Mantas Vaitonis: given that pairs contains non-integer values, what do you expect
pairs(i,pairs(i,:));
to do?
Akzeptierte Antwort
Jan
am 2 Jul. 2018
Bearbeitet: Jan
am 2 Jul. 2018
s = size(pairs);
index = sub2ind(s, repmat((1:s(1)).', 1, s(2)), pairs)
cc = pairs(index)
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Matrix Indexing 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!