Variable for loop storage
1 次查看(过去 30 天)
显示 更早的评论
Hi, I currently have this code which allows the for loop to run based off an array, but I cannot run the same for loop to create a new matrix (the size of the matrix should be the number of loops run). Is there a way I can code for this better? Thank you!
lowPs = 50 x 1 array [101,105,107....], variable pattern
A is a 170 x 50 matrix
for k = lowPs(1:end)
B = find(A(:,1) == k)); %%row numbers in A where A(:,1) that contain the integer in lowPs
low = A(B,:); %% extract these rows from A and build it into a new matrix low, low should be 50 x50
end
0 个评论
采纳的回答
madhan ravi
2020-8-3
low = cell(numel(lowPs), 1);
for k = 1 : numel(lowPs)
B = A(:,1) == lowPs(k); %%row numbers in A where A(:,1) that contain the integer in lowPs
low{k} = A(B, :); %%extract these rows from A and build it into a new matrix low, low should be 50 x50
end
low = cat(1, low{:});
0 个评论
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!