상세 컨텐츠

본문 제목

행렬의 생성

장.Matlab/Matrix - Linear Algebra

by 수내동떡볶이주먹 2021. 1. 31. 15:57

본문

매트랩 기초에서 간단히 다루었지만

 

많은 경우 매트랩내에서 계산은 행렬 혹은 벡터의 형태로 이루어진다.

 

정말 많은 수의 데이터가 있는경우 하나하나 찾아서 행렬을 수정하기란 매우 힘들다

 

따라서 이번에는 행렬의 다루는 방법과 다양한 행렬을 생성하는 방법을 알아보고자 한다

 

 

모든것을 지칭하는 : 기호를 적재적소에 사용하여 원하는 행 혹은 열의 값을 추출한다

 

 

random 사용하기

 

rand()를 사용하면 1이하의 랜덤한 값을 반환한다

간단한 수정으로 무작위로 구성된 행렬을 임의로 생성 할 수 있다

100자리 이하로 구성된 2x2 행렬을 만들어보자

 

 

repeat matrix

repmat(반복할 행렬,반복횟수)

 

 

 

 

block diagram 행렬

 

블록 대각행렬을 생성해주는 명령어이다

blkdiag(행렬1,행렬2) 행렬1과 행렬2를 대각으로 합치고 남은 공간은 0으로 채워준다

 

 

 

특수행렬

 

정말 다양한 많은 종류의 특수행렬이 있는데 matlab에는 거의 모든 특수행렬 명령어가 있다.

그중에서 개인적으로 많이 사용하는 특수행렬은

 

마방진 행렬 ( magic ) 과 파스칼 행렬( pascal ) 이다

 

 

 

행렬의 재배열

 

행렬의 원소수만 일치한다면 내가 원하는 크기의 행렬로 재배열 할 수 있다. 

단 이때 조심해야하는것은 행렬의 배열 순서이다

경우에 따라서는 ' 과 같은 transpose 기능을 이용하는것도 유용하다

 

 

diag 명령어를 이용해서 내가 원하는 행렬의 대각원소를 추출 할 수도 있고

 

내가 원하는 대각 행렬을 만들수도 있다

 

diag( 대각원소 , 위치 )

 

 

 

삼각행렬

 

tril(행렬)

tril 은 행렬의 아랫쪽 삼각부분을 취해주고

 

triu(행렬)

triu 는 행렬의 윗쪽 삼각부분을 취해준다

 

 

 

행렬을 생성하고 다양한 행렬을 만들어주는 명령어를 살펴보았는데 이것이 왜 필요하지??? 라는 생각을 하기 쉽다.

그러나 선형대수를 공부한 사람은 이 중요성을 알 것이다.

 

다시한번 말하지만 매트랩의 계산은 행렬이 기본이다.

행렬을 잘 다루는사람이 매트랩을 잘 다룰 수 있다!

'장.Matlab > Matrix - Linear Algebra' 카테고리의 다른 글

고유벡터 , 인수분해 , 주성분 분석  (0) 2021.01.31
Sparse Matrix (성긴행렬)  (0) 2021.01.31

관련글 더보기

댓글 영역