데이터 분석/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