Interleaved repmat (row duplication)
조회 수: 7 (최근 30일)
이전 댓글 표시
I would like to do a specific repmat such that if I have:
a=[1 0 0;0 0 1;1 1 1]
I would like to duplicate each row by a value N, so that in the case N = 2 each row will be duplicated twice:
b=[1 0 0;1 0 0;0 0 1;0 0 1;1 1 1;1 1 1]
Is there an easy way of doing this interleaved repmat? Thanks
댓글 수: 0
채택된 답변
Stephen23
2021년 11월 5일
The simple and efficient approach is to use REPELEM:
a = [1,0,0;0,0,1;1,1,1]
b = repelem(a,2,1)
추가 답변 (1개)
Sudharsana Iyengar
2021년 11월 5일
Try this
A=[1,0,0; 0 0 1; 1 1 1;];
k=1;
for i =1:3
T(k:k+1,:)=repmat(A(i,:),2,1);
k=k+2;
end
T
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!