오뚝이개발자

[파이썬] np.random 모듈 정리 본문

Language/파이썬

[파이썬] np.random 모듈 정리

땅어 2020. 6. 21. 17:09
728x90
300x250

파이썬의 numpy 모듈에서 머신러닝을 할 때 자주 사용하는 것으로 np.random이 있다. 이 중 자주 사용하는 4가지에 대해서 정리해보려고 한다. numpy모듈은 다음과 같이 import 한다.

import numpy as np

 

np.random.choice()


주어진 1차원 배열에서 임의의 샘플을 생성한다.

import numpy as np

a = np.random.choice(5, 3)
print(a)

b = np.random.choice(10, (2, 3))
print(b)

c = np.random.choice([0, 3, 5, 7], 3)
[4 0 2]
[[0 2 1]
 [4 7 2]]

a는 np.arange(5)에서 3개의 샘플을 뽑아 만든 1차원 배열이고,

b는 np.arange(10)에서 샘플을 뽑아 만든 (2,3) 형상의 배열이다.

또한 c와 같이 첫번째 argument에 1차원 배열을 넣어주어도 된다.

 

np.random.randint()


정수 난수 1개 생성

import numpy as np

# 0~5까지 중 난수 1개
print(np.random.randint(6))

# 1~19까지 중 난수 1개
print(np.random.randint(1,20))

 

np.random.rand()


0부터 1사이의  균일분포에서 난수 생성

import numpy as np

print(np.random.rand(6))

print(np.random.rand(3,2))
[0.76092737 0.3317738  0.11616674 0.91490581 0.97503432 0.46995613]
[[0.12296404 0.86321017]
 [0.48614623 0.1561399 ]
 [0.94082947 0.86776994]]

 

np.random.randn()


가우시안 분포에서 난수 생성

import numpy as np

print(np.random.randn(6))

print(np.random.randn(3,2))
[-0.96503898  1.12732383 -1.36907137 -0.46366206  1.35090827 -0.22424054]
[[-0.64379332 -0.34114206]
 [ 0.28341342  0.49284083]
 [-1.08234849 -1.47323899]]

 

 

참고 사이트

 

 

 

 

728x90
300x250
Comments