# Write matrix or array without overwriting

5 Ansichten (letzte 30 Tage)
Dion Theunissen am 18 Feb. 2021
Kommentiert: Walter Roberson am 18 Feb. 2021
Hi,
I am getting a parameter called 'test' in a for loop. I want to write it to a matrix or array without overwriting. Each loop has a different dimension so that makes it a bit complicated.
I need on line h 'r' values of test, line h the new 'r' values of test and so on. So test needs to come in row h, column r.
for h = 3:10
...
...
...
A = []
for r = 1:g
...
for m = 1:numbcenterlines
...
percentage(m) = sum(distance>0 & distance <1) / numel(distance)*100;
test = max(percentage,[],'all');
end
A(r,h) = [A;test] %this part doesn't work well so my question is how to fix this part and get an array here with all the test values without overwriting
end
end
##### 0 Kommentare-2 ältere Kommentare anzeigen-2 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Akzeptierte Antwort

Stephen23 am 18 Feb. 2021
You are mixing up two different approaches to adding data in a loop: concatenation and indexing. Just pick one, e.g.:
A = [A;test];
##### 6 Kommentare4 ältere Kommentare anzeigen4 ältere Kommentare ausblenden
Dion Theunissen am 18 Feb. 2021
A =
0 0 67.9666
0 0 57.2263
0 0 73.3220
0 0 19.6101
0 0 21.3058
0 0 88.3791
0 0 78.7196
A =
0 0 0 36.5854
0 0 0 36.5854
0 0 0 36.5854
0 0 0 36.5854
0 0 0 36.5854
0 0 0 36.5854
0 0 0 36.5854
This is the result, but i want to save the third column aswell.
Walter Roberson am 18 Feb. 2021
Do not do the
A = [];
inside your outer loop.

Melden Sie sich an, um zu kommentieren.

### Kategorien

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

R2020b

### Community Treasure Hunt

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

Start Hunting!

Translated by