import numpy as np
import matplotlib.pyplot as plt
# 모집단 생성 (예: 국가의 모든 성인의 키 데이터)
population = np.random.normal(170, 10, 1000)
# 표본 추출
sample = np.random.choice(population, 100)
plt.hist(population, bins=50, alpha=0.5, label='population', color='blue')
plt.hist(sample, bins=50, alpha=0.5, label='sample', color='red')
plt.legend()
plt.title('population and sample distribution')
plt.show()

numpy.random.normal(loc=0.0, scale=1.0, size=None)
# -2.3000549144325992 랜덤하게 생성
-loc (float) : 정규분포의 평균 (기본값 : 0.0)
-scale (float) : 정규분포의 표준편차 (기본값 : 1.0)
-size (int 또는 tuple of ints) : 출력 배열의 크기 (기본값: None,즉 스칼라 값 반환)
numpy.random.choice(a, size=None, replace=True, p=None)a (1-D array-like- or int): 샘플링할 원본 배열. 정수인 경우np.arange(a) 와 동일하게 간주됨.size (int 또는 tuple of ints): 출력 배열의 크기 (기본값:None, 즉 단위 값 반환)replace (boolean): 복원 추출 여부를 나타냄. True면 동일한 요소가 여러번 선택 될 수 있음. (기본값 : True)p (1-D array-like, optional) : 각 요소가 선택될 확률. 배열의 합은 1이어야 합니다.