Write matrix or array without overwriting

4 次查看(过去 30 天)
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

采纳的回答

Stephen23
Stephen23 2021-2-18
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 个评论
Dion Theunissen
Dion Theunissen 2021-2-18
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.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Multidimensional Arrays 的更多信息

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by