ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 5-1. (Matlab) 알아두면 유용한 매트랩, 행렬 인덱스(indexing) 응용
    2) Tech 2020. 3. 22. 20:32
    반응형

    안녕하세요!!

     

    오늘은 지난 행렬 인덱스(indexing) 게시물에 이어 행렬 인덱싱의 간단한 응용을 공유해볼까합니다!

     

    1.행렬 인덱싱 응용

     

    먼저 Matlab에서 3x3 행렬 하나를 생성합시다.

     

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

     

    (1 2 3)

    (4 5 6)

    (7 8 9)    3x3 행렬 생성

     

    인덱스에 접근하기전!!

     

    지난 시간 행렬의 인덱스 접근 할 때 한가지만 기억하면 된다고 말씀드렸습니다!

     

    A(접근 행, 접근 열) 

     

    - 열 전체 Indexing

     

    해당 행렬에서 원하는 열의 전부를 추출하고 싶다면

     

    아래 그림과 같이 행은 1~n 까지 즉, 모든 행을 접근해야합니다.

     

    열 추출

     

    y = A( : , 2)     ->    괄호 안에 ':' 는 모든 행 접근을 의미합니다. 뒤에 숫자 2는 접근 열번호를 의미합니다.

     

    매트랩 열 전체 추출

     

    - 행 전체 Indexing

     

    반대로 행전체 추출은 모든 열에 접근해야합니다.

     

    행 추출

    위그림과 같이 n 번째 행을 추출하려면, n번째 행과 1~n까지 열에 접근해야합니다.

     

    y = A(3, :)      ->   괄호 안에 ':' 는 모든 열 접근을 의미합니다. 앞에 숫자 3는 접근 행 번호를 의미합니다.

     

    매트랩 행 전체 추출

     

    -  열 & 행 Indexing 응용

    Matrix( , )

    특정행렬의 행과 열은 ',' 로 구분된다고 했습니다.

     

    그럼,

    A 행렬의 1행 2,3열 값과 3행 2, 3열의 값을 동시에 추출하고 싶습니다!

     

    이땐 ( ) 안에서 []괄호를 이용해 행과 열을 묶어줍니다.

     

    z = A([1,3], [2,3])     ->   ( [ 1행, 3행]  ,  [2열, 3열 ] ) 이와 같은 의미입니다. 

     

    행 열 동시 접근


    B = A(end:-1:1, :)    ->    end는 해당 행렬의 맨 끝 행 또는 열을 의미합니다. 

     

    이는 끝행 부터 시작 해서 -1씩 다음행에 접근해 각 행을 추출해서 쌓는 표현이라고 보시면됩니다.

     

     

    보시면 B의 1행이 A의 3행의 값을 나타내고 있습니다.

     

    'end'로 마지막 행부터 쌓아 행의 위치를 바꿔봤습니다!

     

    -  행렬 결합

     

    마지막으로 두 행렬의 조합으로 새로운 행렬을 만들어보겠습니다!

     

    A = [1,2 ; 3,4];   // 2X2 행렬 생성 

     

    b = [5, 6];    // 1x2 행렬 생성

     

    위 두행렬로 새로운 행렬 B를 만들어봅시다.

     

    B = [A, b']     // b행렬 Tranpose 하여 열방향으로 A행렬에 추가

     

    B1 = [A;b]     // b행렬 행방향으로 A행렬에 추가

     

    행렬 결합

     

    B = [A, b'] 는 , 를 이용해 열을 추가 했으므로

     

    B = [1, 2 , 5 ; 3, 4, 6] 또는 B = [A , [5;6]]  과 같은 표현입니다 

     

     

    B1 = [A;b] 는 ; 를 이용해 행을 추가 했으므로

     

    B1 = [1, 2 ; 3, 4 ; 5, 6] 과 같은 표현입니다.

     

    매트랩 행렬에서 두괄호를 기억하시면 도움이 되실겁니다!!

     

    [ ]: 행렬 생성!

     

    ( ): 행, 열 인덱스 접근!

     

    오늘은 여기서 마무리하겠습니다!

     

    읽어주셔서 감사합니다~

     

     

     

    반응형

    댓글

Designed by Tistory.