Main Content

shiftdim

배열 차원 이동

설명

예제

B = shiftdim(A,n)은 배열 A의 차원을 n개 자리만큼 이동시킵니다. shiftdimn이 양의 정수이면 차원을 왼쪽으로 이동시키고 n이 음의 정수이면 오른쪽으로 이동시킵니다. 예를 들어, A가 2×3×4 배열이면 shiftdim(A,2)는 4×2×3 배열을 반환합니다.

B = shiftdim(A)A와 요소가 동일한 배열을 반환하는데 길이가 1인 선행 차원을 제거한 상태로 반환합니다.

예제

[B,m] = shiftdim(A)는 제거된 길이가 1인 차원 수도 반환합니다.

예제

모두 축소

4×2×3×5 배열을 만듭니다. 차원을 왼쪽으로 2개 자리만큼 이동시켜 처음 2개의 길이가 마지막 2개의 차원으로 순환되도록 합니다.

A = rand(4,2,3,5);
B = shiftdim(A,2);
size(B)
ans = 1×4

     3     5     4     2

차원을 오른쪽으로 2개 자리만큼 이동시켜 길이가 1인 선행 차원 2개를 생성합니다. 오른쪽으로 이동시키면 차원의 길이가 순환되지 않습니다.

C = shiftdim(A,-2); 
size(C)
ans = 1×6

     1     1     4     2     3     5

배열의 차원을 이동시킵니다.

5차원 배열 A를 계산하고 길이가 1인 선행 차원을 제거합니다. shiftdim 함수는 2개의 차원만큼 이동시키고 3차원 배열 B를 반환합니다.

A = rand(1,1,3,2,4);
[B,nshifts] = shiftdim(A);
nshifts
nshifts = 2
size(B)
ans = 1×3

     3     2     4

B의 차원을 왼쪽으로 두 번 이동시킵니다.

C = shiftdim(B,2);
size(C)
ans = 1×3

     4     3     2

C의 차원을 오른쪽으로 한 번 이동시킵니다.

D = shiftdim(C,-1); 
size(D)
ans = 1×4

     1     4     3     2

입력 인수

모두 축소

입력 배열로, 벡터, 행렬, 다차원 배열 중 하나로 지정됩니다.

이동시킬 차원 자리의 개수로, 정수로 지정됩니다. n이 양수인 경우 shiftdim은 차원을 왼쪽으로 이동시키고 선행 차원을 끝으로 순환시킵니다. n이 음수인 경우, shiftdim은 차원을 오른쪽으로 이동시키고 추가적인 선행 차원을 길이 1로 채웁니다.

출력 인수

모두 축소

출력 배열로, 벡터, 행렬 또는 다차원 배열로 지정됩니다.

제거된 차원 수로, 음이 아닌 정수로 지정됩니다. shiftdim은 길이가 1인 선행 차원만 제거합니다.

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목

| | |