라일락 꽃이 피는 날

[Numpy] random 본문

데이터 분석/Python

[Numpy] random

eunki 2021. 4. 27. 23:17
728x90

1. np.random.rand

0~1 사이의 임의의 균일 분포 값을 반환한다.

np.random.rand()  # 0.5644040985351038

np.random.rand(3)  # array([0.15907147, 0.56814351, 0.65641927])

np.random.rand(3,2)  # array([[0.1728781 , 0.41835388],
                     #        [0.39280028, 0.09229667],
                     #        [0.0272809 , 0.02512556]])

 

 

 

2. np.random.randn

n : normal distribution (정규 분포)

-1~1 사이의 임의의 정규 분포 값을 반환한다.

np.random.randn()  # -0.6184246409845511

np.random.randn(3)  # array([ 0.9828918 ,  1.09115847, -0.74447922])

np.random.randn(3,2)  # array([[-0.33378828, -0.07766581],
                      #        [ 2.01154501, -1.49273215],
                      #        [-0.49006207, -1.23913967]])

 

 

 

3. np.random.randint

임의의 정수 값을 반환한다.

 

low : 반환할 값의 범위 중 가장 작은 값

high : 반환할 값의 범위 중 가장 큰 값

size : 반환할 값의 크기

np.random.randint(high=10)  # 2

np.random.randint(low=3, high=20)  # 10

np.random.randint(low=5, high=10, size=10)  # array([8, 7, 9, 7, 5, 9, 7, 5, 6, 6])

np.random.randint(1, 100, size=(3, 5))  # array([[37, 27, 57, 72, 31],
                                        #        [73, 16, 80, 23, 90],
                                        #        [40, 95, 71, 70, 35]])

 

 

 

4. np.random.normal

정규 분포로부터 임의의 값을 반환한다.

 

loc : 분포의 평균

scale : 분포의 표준 편차

size : 반환할 값의 크기

np.random.normal(loc=3, scale=2.5)  # 0.18568042131903217

np.random.normal(loc=0, scale=1, size=3)  # array([ 5.71281228e-04,  1.02367244e-01, -8.85638838e-01])

 

 

 

5. np.random.uniform

균등 분포로부터 임의의 값을 반환한다.

 

low : 출력 간격의 하한 값

high : 출력 간격의 상한 값

size : 반환할 값의 크기

np.random.uniform(low=1.0, high=3.0, size=(4, 5))

 

 

 

6. np.random.choice

주어진 1차원 ndarray로 부터 랜덤으로 샘플링한다.

정수가 주어진 경우, np.arange(해당 숫자)로 간주한다.

 

size : 반환할 값의 크기

replace : 샘플의 중복 여부 (default=True)

np.random.choice(100, size=(3, 4))  # array([[71, 80,  2, 94],
                                    #        [19, 98, 63, 53],
                                    #        [27, 56, 30, 48]])
                                    
x = np.array([1, 2, 3, 1.5, 2.6, 4.9])
np.random.choice(x, size=(2, 2))  # array([[1. , 3. ],
                                  #        [4.9, 3. ]])

 

 

 

 

7. np.random.seed

랜덤한 값을 동일하게 다시 생성하고자 할때 사용한다.

np.random.seed(100)
728x90