creating a repeated matrix
조회 수: 10 (최근 30일)
이전 댓글 표시
HI all,
I have the following code
k1=repmat({'S1'}, [3,1]) ;
k2=repmat({'S2'}, [3,1]) ;
k3=repmat({'S3'}, [3,1]) ;
k4=repmat({'S4'}, [3,1]) ;
k5=repmat({'S5'}, [3,1]) ;
k6=repmat({'S6'}, [3,1]) ;
ktotal= [k1; k2;k3;k4;k5;k6];
Is it possible to create "ktotal" with a more clever way? Probably with a loop?
thank you in advance
댓글 수: 0
채택된 답변
per isakson
2012년 7월 2일
편집: per isakson
2012년 7월 2일
This is a more "clever" way:
ixs = repmat( [1:6], [3,1] );
ktotal = arrayfun( @(ii) sprintf('S%u',ii), ixs(:), 'uni', false );
However, a for-loop is probably the "best" way:
ktotal = cell( 6*3, 1 );
for ii = 1:6
ix = 3*(ii-1)+1;
ktotal( ix : ix+2 ) = {sprintf('S%u',ii)};
end
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!