오늘의 인기 글
최근 글
최근 댓글
Today
Total
12-21 17:24
관리 메뉴

우노

[Python] Numpy random 모듈 정리 본문

Language/Python

[Python] Numpy random 모듈 정리

운호(Noah) 2020. 12. 3. 22:21

특정 평균 및 표준편차를 만족하는 정규분포 데이터 생성

import numpy as np

# 평균:0, 표준편차:1, 생성데이터:실수값하나
np.random.normal(0,1)

# 평균:0, 표준편차:1, 생성데이터:2x2행렬
np.random.normal(0,1,(2,2))

# 데이터 각 열에 평균과 표준편차를 다르게 적용할 경우
# 평균:5,15,5  표준편차:3,3,3 생성데이터:1000x3행렬
np.random.normal((5,15,15), (3,3,3), (1000,3))

평균 0, 분산 1의 표쥰정규분포 데이터 생성

import numpy as np

# 요소가 5개인 벡터 생성
np.random.randn(5)

# 행렬 형태로 생성
np.random.randn(2, 3)

0 이상 1 미만의 균등 분포 데이터 생성

import numpy as np

# 요소가 5개인 벡터 생성
np.random.rand(5)

# 행렬 형태로 생성
np.random.rand(2,3)

rand 과 randn 비교

  • rand (좌측, 균등 분포)
    • 각 구간의 샘플수(난수의 개수)가 거의 동일하도록 생성
  • randn (우측, 표준 정규 분포)
    • 각 구간의 샘플수(난수의 개수)가 정규분포를 따르도록 생성

0.0 이상 1.0 미만의 데이터 생성

import numpy as np

# 실수값 5개 생성
np.random.random(5)

# 행렬크기 만큼 실수값 생성
np.random.random((2,2))

low 이상 high 미만의 데이터 생성

import numpy as np

# 1이상 10 미만의 정수값 하나 생성
np.random.randint(1,10)

# 1이상 10 미만의 정수값 5개 생성
np.random.randint(1,10,size=5)

# 1이상 10 미만의 정수값 행렬크기 만큼 생성
np.random.randint(1,10,size=(2,2))

1차원 배열로부터 임의의 데이터 추출

import numpy as np

arr = [1,6,3,4,8,3,7,0,1,3,5,9]

np.random.choice(arr, size=(3,4))

np.random.choice(arr, size=(3,4), replace = False)   #비복원시

데이터 랜덤 셔플

import numpy as np

arr = [1,6,3,4,8,3,7,0,1,3,5,9]

np.random.shuffle(arr)
print(arr)
# [3, 4, 3, 8, 9, 5, 6, 1, 3, 1, 7, 0]
Comments