반응형
표준정규분포에서 표본을 추출해봅시다.
np.random.randn(원소 수)
np.random.randn(행의 수, 열의 수)
...
일반화하여 표현하면 아래와 같습니다.
np.random.rand(shape)
예를 들어봅시다. 원소가 10개인 표본을 추출해봅시다.
>>> np.random.randn(10)
array([-0.46918572, -0.01478616, -0.68911651, 1.14858756, -1.97550475,
-1.66843948, 0.37697573, 1.55891432, 0.56331007, 0.93739202])
2행5열의 표본을 추출해봅시다. 위 결과와 얼핏 같아 보이지만 아닙니다. 아래 결과는 리스트가 2중 중첩입니다.
>>> np.random.randn(2,5)
array([[-0.42984829, 0.39786539, 0.45672605, -0.46939799, -0.44503131],
[-0.90079517, -0.99296449, 0.24403395, -0.46266778, 0.1448678 ]])
만약 표준정규분포가 아니라, 우리가 원하는 평균과 표준편차가 사용된 정규분포에서 추출하려면 어떻게 해야 할까요?
표준화 과정을 거꾸로 하면 됩니다. 평균이 $\mu$이고, 표준편차가 $\sigma$ 인 정규분포는 아래와 같이 표준화됩니다.
$Z=\frac{X-\mu}{\sigma}$
아래와 같이 변형할 수 있습니다.
$\sigma Z+\mu=X$
예를들어 평균이 10이고, 표준편차가 3인 정규분포에서 10개의표본을 추출하고 싶다면 아래와 같이 입력하면 됩니다.
>>> np.random.randn(10)*3+10
array([ 3.14396629, 7.92290218, 13.25465947, 14.87913917, 13.88746704,
11.3491535 , 8.24450085, 11.51750932, 8.52251674, 9.37713388])
반응형
'파이썬 > 통계분석' 카테고리의 다른 글
[파이썬 강의] 80. 표본추출 (카이제곱분포) (0) | 2021.11.05 |
---|---|
[파이썬 강의] 79. 표본추출 (t분포) (0) | 2021.11.04 |
[파이썬 강의] 77. 표본추출 (균등분포) (0) | 2021.11.02 |
[파이썬 강의] 76. 표본추출 (구간 사이 정수값) (0) | 2021.11.01 |
[파이썬 강의] 75. 배열 원소의 최댓값과 최솟값 (0) | 2021.10.29 |
댓글