01-머신러닝 이해에 필요한 통계학적 핵심 개념
1-1. 머신러닝과 통계학

1-2. 모집단 vs. 모수와 통계량 vs. 평균, 중간값, 최빈값

1-3. 분산, 표준편차, 범위, 사분위수

import numpy as np
from scipy import stats
np.random.seed(0)
data = np.random.randint(0, 100, 10000)
mean = np.mean(data); print("평균값: ", mean.round(2))
median = np.median(data); print("중앙값: ", median)
mode = stats.mode(data); print("최빈값: {} ({})".format(mode[0][0], mode[1][0]))
import numpy as np
from statistics import variance, stdev
np.random.seed(0)
points = np.random.randint(0, 100, 200)
var = variance(points); print("분산: ", var)
std = stdev(points); print("표준편차 : ", np.round(std, 2))
range = np.max(points) - np.min(points); print("범위: ", range)
print("사분위 수: ")
for val in [0, 25, 50, 75, 100]:
quantile = np.percentile(points, val)
print("{}% => {}".format(val, quantile))
q1, q3 = np.percentile(points, [25, 75])
print("IQR: ", q3 - q1)