개발/매트랩

[매트랩] Array Creation : zeros, ones, colon operator, linspace, logspace

섭교수 2022. 3. 27. 08:00
반응형

#매트랩

1. zeros

zeros(r, c)를 입력하면 모든 entry가 zero이고 크기가 r x c 인 배열(행렬)이 생성된다.

 

zeros(n, n)를 입력하면 모든 entry가 zero이고 크기가 n x n 인 배열이 생성된다.

2. ones

ones(r, c) 를 입력하면 모든 entry가 1이고 크기가 r x c 인 배열이 생성된다.

ones(n) 를 입력하면 모든 entry가 1이고 크기가 n x n 인 배열이 생성된다.

3. Colon Operator (:)

Colon operator는 파이썬의 슬라이싱과 유사한 기능이다.

아래 그림은 새로운 배열을 생성하고 colon operator를 사용한 예시이다.

:가 범위에 해당하는 건데 : 좌우가 비어있으면 전체라고 생각하면 편할 듯. 엑셀의 끝 테두리를 눌렀을 때와 같은 기능이랄까나

매트랩에서는 A(:,4)를 입력한 것과 같다.

또한 column vector나 row vector의 경우 굳이 괄호 안에 ,1 또는 1, 를 입력하지 않아도 된다.

colon operator는 그 자체로 array를 생성하는 기능도 가지고 있다.

a:d:l 을 입력하면 a가 시작점, 간격이 d이며 l 까지의 entry를 갖는(l : limit) row vector가 생성된다. (d는 생략 가능)

2:7 을 입력하면(d를 생략한 것) 기본간격인 1이 사용된다.

4. linspace

 

linspace는 linear space의 줄임말이며 선형적으로 변하는 row vector를 생성하는 명령어다.

lin(a,b,d) 를 입력하면 a가 시작점, b가 끝점이 되며 d 개로 분할된 (d개의 entry를 갖는) row vector가 출력된다.

5. logpsace

logspace는 log (상용로그) 단위를 사용한다는 것 말고는 linspace와 유사하게 작동한다.

입력값과 출력값의 단위를 혼동하지 않게 주의해야 한다.

 

또한 위와 같이 출력되었을 경우 행렬 앞에 상수가 곱해진 것을 표현한 것이다.

반응형