Matrix line by line
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
TheDice
am 20 Apr. 2021
Kommentiert: TheDice
am 20 Apr. 2021
how can i go through a matrix line by line?
I have this matrix and would like to have the value of a spinner depending on the value.
x = [1:1:5; 6:1:10]
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 20 Apr. 2021
x = [1:1:5; 6:1:10; 11:15; 16:20; 21:25; 26:30; 31:35; [36, 0, -1, nan, nan]];
nrow = size(x,1);
for K = 1 : 5
spin = randi(nrow);
randrow = x(spin,:)
end
3 Kommentare
Walter Roberson
am 20 Apr. 2021
It sounds like you want linear indexing, but row by row
x = [1:1:5; 6:1:10; 11:15; 16:20; 21:25; 26:30; 31:35; [36, 0, -1, nan, nan]];
nent = numel(x);
xt = x.';
for K = 1 : 5
spin = randi(nent);
randval = xt(spin);
[spin, randval]
end
The entries in the array happen to all be equal to their index when operating with that scheme, except for the last few, and you can see in my example that indeed it happened to pull out the stored value (0) at index 37
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!