Python Data/Python 실행

NumPy: np.linspace 와 np.arange의 차이점

palefaceman 2022. 9. 15. 09:55

시퀀스(sequence)를 생성하는 NumPy에 linspace와 arange가 가장 널리 사용되는 함수다.

 

두 함수 사이에 조금 다른 점이 있다.

  • linspace: 간격의 크기를 결정할 수 있다.
  • arange: 간격 안에서 생성되는 수의 개수를 결정할 수 있다.

 

아래 예제를 통해서 함수들이 어떻게 작동하는지 알 수 있다.

예시 1: np.linspace 사용하기

np.linspace()의 함수는 아래 기본 신텍스(syntax)로 구성된다.

 

np.linspace(start, stop, num,...)

  • start: 시작하는 수
  • stop: 마지막 수
  • num: 생성하는 수

 

아래 코드에 np.inspace()를 이용해서 0~20까지 11개 변수를 생성하는 코드를 입력했다.

import numpy as np

# 0에서 20사이에 11개의 변수 생성
np.linspace(0,20,11)

array([ 0.,  2.,  4.,  6.,  8., 10., 12., 14., 16., 18., 20.])

 그 결과 11개의 변수가 0~20 사이에 동일한 간격(2)으로 생성되었다. 

 

np.linspace() 함수를 이용하면 시작과 마지막 수 사이에 생성하는 변수의 수에 따라 얼마나 나눌지에 자동으로 결정해준다.

예시 2: np.arange 사용하기

np.arange()의 함수는 아래 기본 신텍스(syntax)로 구성된다.

 

np.linspace(start, stop, step,...)

  • start: 시작하는 수
  • stop: 마지막 수
  • step: 수 간 간격 

 

아래 코드에 np.arange()를 이용해서 0~20 사이에 2의 간격으로 생성하는 코드를 입력했다.

import numpy as np

# 0~20 사이에서 2간격으로 변수 생성
np.arange(0,20,2)

array([ 0,  2,  4,  6,  8, 10, 12, 14, 16, 18])

 그 결과 0~20 사이에 2 간격으로 변수가 생성되었다.

 

np.arange() 함수를 이용하면 얼마나 많은 변수를 생성해야 하는지 자동으로 결정해준다.

 

np.arange() 함수에 'step'에 2 대신에 4를 넣어 주면 거기에 맞춰 생성하는 수를 결정한다.

import numpy as np

#0~20 사이에 4 간격으로 변수 생성
np.arange(0,20,4)

array([ 0,  4,  8, 12, 16])

  

관련 포스팅