2014-01-14 3 views
0

행렬을 가지고 있고 각 행을 복제하려고합니다. n 번, 각 행은 연속적으로 쌓여 있습니다. n 번.Matlab : 행렬의 각 행을 복제

그래서 기본적으로 다음

n = 2

내 매트릭스 경우

A = [1 2 3; 4 5 6; 7 8 9]

B = [1 2 3; 1 2 3; 4 5 6; 4 5 6; 7 8 9; 7 8 9] 될 것이다.

미리 감사드립니다.

답변

6

이 질문은 전에 예를 들어 here, herehere (오늘부터)과 같이 많이 묻습니다.

일부 솔루션 :

kron(A,ones(n,1)) 
ans = 

    1  2  3 
    1  2  3 
    4  5  6 
    4  5  6 
    7  8  9 
    7  8  9 

또 다른 하나

reshape(repmat(A(:)',n,[]),[],3); 

그리고 하나 더 :

B = A(ceil((1:size(A,1)*n)/n),:) 

골라 봐!

+0

대단히 감사합니다. 중복에 대한 사과. –

관련 문제