PL/Python

[numpy] linspace 기본 사용법과 arange와의 차이점

PIYA 2022. 10. 7.

 

포스팅 목적

자주 등장하지만 아직 잘 모르겠는 numpy linspace에 대하여 간단히 사용법을 알아보고 익힌다.

 

np.linspace()함수를 사용하고 보니 np.arange()와 매우 유사한데, 차이점도 짚고 넘어가자.

 

 

linspace 함수개요

 

"Return evenly spaced numbers over a specified interval."

 

Linspace는 아마 Linearly Spaced의 약자인 듯 하다.

 

    인자로는 linspace(start, stop, num)을 받는다. 시작지점과 끝점은 필수인자이며, num값은 주어지지 않았을 때 기본적으로 50의 값을 갖는다. 즉 50등분한다. 반환값은 당연히 1차원 ndarray이다.

 

 

linspace 예제코드와 모양새를 보자!

1부터 5까지 5등분하니 당연히 1,2,3,4,5의 배열이 나왔고, 두번째 b에 대해서는 6부터 10까지 인자 두개만 지정해주었더니 50등분하여 ndarray로 반환했다.

 

import numpy as np
a = np.linspace(1,5,5)
print(a, '\n')

b = np.linspace(6,10)
print(type(b))
print(b)

위 코드의 실행결과값

 

 

linspace arange 차이

 

공통점

두 함수 모두 시작값과 끝값을 지정하며, 일정 구간을 쪼개 ndarray를 반환한다는 것은 같다.

 

차이점

 

하지만 linspace 함수는 세번째 인자로 '개수(num)'를 받으며, arange 함수는 '간격(step)'을 받는다.

 

세번째 인자는 두 함수 모두 optional이다.

 

linspace는 디폴트값 50개로 나누고, arange는 디폴트 간격이 1이다.

 

 

댓글