[NumPy] random 서브 모듈 함수 이용
18 Jan 2020 | NumPynp.random 서브 모듈안에는 엄청 많은 함수들이 존재함.
rand
np.random. rand(d0, d1, …, dn)
0과 1 사이의 분포로 랜덤한 ndarray 생성.
print(np.random.rand(2,5))
randn
n : normal distribution (정규분포)
정규분포로 샘플링된 랜덤 ndarray 생성
print(np.random.randn(2,5))
randint
randint(low, high=None, size=None, dtype=’l’)
low와 high 정수 사이에서 size에 맞는 형태로 랜덤하게 샘플링해줌. (high는 포함 x)
size를 주지않으면 단 하나의 정수만 뽑아줌.
low, high 두 값을 명시하지 않고 하나의 값만 넘겨주면
그 숫자 아래에 있는 정수들 중에서 랜덤 샘플링을 진행함.
print(np.random.randint(1, 10, size=(2,5)))
print(np.random.randint(1, 10))
print(np.random.randint(10, size=(5,)))
seed
랜덤한 값을 동일하게 다시 얻고 싶을 때 사용함.
np.random.seed(1)
print(np.random.randn(3,4))
choice
choice(a, size=None, replace=True, p=None)
주어진 1차원 ndarray로부터 랜덤하게 샘플링.
정수가 주어진 경우, np.arange(해당 정수)로 간주.
샘플링 시 중복 여부는 replace 를 이용하면 됨.
replace=False인 경우는 중복을 허용하지 않음.
print(np.random.choice(100, size=(3,4)))
a = np.array([1,2,3,7,8,9])
print(np.random.choice(a, size=(2,2)))
print(np.random.choice(a, size=(2,2), replace=False))
확률분포에 따른 ndarray 생성
uniform
normal
…
print(np.random.uniform(1.0, 3.0, size=(2,5)))
print(np.random.normal(size=(3,4)))
위 내용은 fastcampus 강의 내용을 요약한 것입니다.
Comments