How do I loop a matrix with multiple changing variables ?

조회 수: 6 (최근 30일)
Mvdw
Mvdw 2016년 5월 2일
편집: Stephen23 2016년 5월 2일
I'm trying to fill in a matrix with 3 changing variables.
Example: I've got a dataset M, with 10 different values in each colon. So I say:
A= M(:,10)
B= M(:,11)
C= M(:,12)
I'm trying to fill these in into this matrix:
if true
% code
R = [A A+B A+C;
B+A B B+C;
C+A C+B C]
end
So for the first value A=1, B=2 and C=3 the matrix should look like:
if true
% code
[1 3 4;
3 2 5;
4 5 3]
end
How can I loop this so it will give me 10 matrices?
  댓글 수: 1
Stephen23
Stephen23 2016년 5월 2일
편집: Stephen23 2016년 5월 2일
Adam's answer is the way to go. Do NOT try to create or access multiple variable in a loop, this makes for very buggy and slow code:

댓글을 달려면 로그인하십시오.

답변 (1개)

Adam
Adam 2016년 5월 2일
R = [A; A+B; A+C; B+A; B; B+C; C+A; C+B; C];
will give you the 10 matrices as columns of R which can be reshaped to 3*3 if required. e.g.
R = reshape( R, [3 3 10] );
then R(:,:,1) will be the first upto R(:,:,10) the 10th.

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by