Filter löschen
Filter löschen

saving a matrix of each loop

9 Ansichten (letzte 30 Tage)
caroline bourn
caroline bourn am 11 Mär. 2021
Kommentiert: caroline bourn am 11 Mär. 2021
HELLO! i am trying to save a matrix on each loop.
i know this is simple syntax but it is not working for me. This is the code i have where i know there is a syntax error. it just keeps overriding the previous matrix.
while(fin)
% made seperate matrix for the test
for i=1:length(pts)
matrix = [x(next:pts(i,:)), y(next:pts(i,:)), test(next:pts(i,:))];
next = pts(i);
end
if pts(i) == length(pts)
fin = 0;
end
return
end
i then attempted to add this, and this is the error coming up.
test(i,:) = matrix;
Unable to perform assignment because the indices on the left side are not compatible with the size of the right side.
i have attempted to use matrix{i} but that gives me a cell and i cant handle it the way i want to. none of the cell commands work...
i have also tried matrix(:,i) = [x(next:pts(i,:)), y(next:pts(i,:)), test(next:pts(i,:))];
Unable to perform assignment because the indices on the left side are not compatible with
the size of the right side.
Error in arrayplay (line 56)
matrix(:,i) = [x(next:pts(i,:)), y(next:pts(i,:)), num_step(next:pts(i,:))];
please help. im just about ready to cry.

Akzeptierte Antwort

KSSV
KSSV am 11 Mär. 2021
You can save them into a cell as shown below.
iwant = cell([],1) ; % initilize a cell array;
while(fin)
% made seperate matrix for the test
for i=1:length(pts)
matrix = [x(next:pts(i,:)), y(next:pts(i,:)), test(next:pts(i,:))];
next = pts(i);
iwant{i} = matrix ; % save into a cell
end
if pts(i) == length(pts)
fin = 0;
end
return
end
Access the cell using: iwant{1}, iwant{2},...etc.
You can also initialize it into amatrix, if dimensions are known in prior and if dimensions don't change in a loop.
  5 Kommentare
KSSV
KSSV am 11 Mär. 2021
Bearbeitet: KSSV am 11 Mär. 2021
Then go by cell array....if problem is well known there might be another easy way.
caroline bourn
caroline bourn am 11 Mär. 2021
im sorry, i don't understand. could you explain it a bit further?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by