본문 바로가기
IT/MATLAB

sub2ind 함수

by Jang HyunWoong 2014. 12. 19.

인터넷에서 sub2ind함수를 찾아봤다

 

sub2ind  

 

Single index from subscripts

 

서브크르립트의 싱글인덱스

 

Syntax 

 

IND = sub2ind(siz,I,J)

 

IND = sub2ind(siz,I1,I2,...,In)

 

 

Description 

 

The sub2ind command determines the equivalent single index corresponding to a set of subscript values.

 

IND = sub2ind(siz,I,J) returns the linear index equivalent to the row and column subscripts I and J for a matrix of size siz.

 

IND = sub2ind(siz,I1,I2,...,In) returns the linear index equivalent to the n subscripts I1,I2,...,In for an array of size siz.

 

equivalent 한 인덱스를 말하는 것 같다. (동등한, 상응하는)

 

직접 매트랩으로 예를 들어봤다

 

>> A = [17 24 1 8; 2 22 7 14; 4 6 13 20]

 

A =

 

    17    24     1     8

     2    22     7    14

     4     6    13    20

 

>> A(1)

 

ans =

 

    17

 

>> A(3)

 

ans =

 

     4

 

>> A(5)

 

ans =

 

    22

 

그렇다면 2차 행렬은 어떨까..? 똑같다

 

이것은 인터넷에 있던 예이다.

 

Create a 3-by-4-by-2 matrix, A.

 

A = [17 24 1 8; 2 22 7 14; 4 6 13 20];

A(:,:,2) = A - 10

 

A(:,:,1) =

 

    17    24     1     8

     2    22     7    14

     4     6    13    20

 

 

A(:,:,2) =

 

     7    14    -9    -2

    -8    12    -3     4

    -6    -4     3    10

 

The value at row 2, column 1, page 2 of the matrix is -8.

 

A(2,1,2)

 

ans =

 

    -8

To convert A(2,1,2) into its equivalent single subscript, use sub2ind.

 

sub2ind(size(A),2,1,2)

 

ans =

 

    14

 

You can now access the same location in A using the single subscripting method.

 

A(14)

 

ans =

 

    -8

 

*결론:

 

인덱스 값으로 행렬의 같은 위치를 접근 할 수 있다.

sub2ind 는 ('subscript to index'를 줄인 말 같다.) 인덱스 값을 알려준다.

반응형