<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Ch3. 분포의 특성
최빈값
중앙값
평균
분산
표준편차
왜도
최빈값 ( mode )
최빈값은 빈도수가 가장 많이 발생한 관찰값을 말함
- ex) 1, 3, 6, 6, 6, 7, 7, 12, 12, 19 있을때, 최빈값은 6이다.
중앙값 ( median )
중앙값은 수치로 된 자료를 크기순서대로 나열할 때, 가장 가운데에 위치하는 관찰값을 말한다.
- ex) 1, 2, 4, 5, 7, 9, 10 있을때, 중앙값은 5이다.
산술평균 ( arithmetic mean )
우리가 흔히 사용하는 간단한 평균, 그냥 "평균" 이라고도 한다.
$$\bar{X} = \frac{X_1 + X_2 + \cdots + X_n}{n} = \frac{\sum X_i}{n} $$
가중평균 ( weighted arithmetic mean )
같은 모집단에서 표본을 서로 다른 개수로 뽑은 경우(가중치가 존재하는 경우) 평균값을 구할때 사용
$$\bar{X} = \frac{n_1 \bar{X_1} + n_2 \bar{X_2} + \cdots + n_k \bar{X_k}}{n_1 + n_2 + \cdots + n_k} = \frac{\sum n_i \bar{X_i}}{n_i} $$
평균과 최빈값, 중앙값들의 위치 비교
대칭분포
평균 = 중앙값 = 최빈값 모두 같다
왼쪽꼬리분포 ( skewed to the left )
평균은 중앙값보다 작다
오른쪽꼬리분포 ( skewed to the right )
평균은 중앙값보다 크다
분산 ( variance )
Step1:  평균
Step2:  표준편차
<ASSISTANT_TASK:>
Python Code:
import numpy as np
np.random.seed(0)
data = np.random.randint(40, 100, size=(5, 5))
data
Explanation: Ch3. 분포의 특성
최빈값
중앙값
평균
분산
표준편차
왜도
최빈값 ( mode )
최빈값은 빈도수가 가장 많이 발생한 관찰값을 말함
- ex) 1, 3, 6, 6, 6, 7, 7, 12, 12, 19 있을때, 최빈값은 6이다.
중앙값 ( median )
중앙값은 수치로 된 자료를 크기순서대로 나열할 때, 가장 가운데에 위치하는 관찰값을 말한다.
- ex) 1, 2, 4, 5, 7, 9, 10 있을때, 중앙값은 5이다.
산술평균 ( arithmetic mean )
우리가 흔히 사용하는 간단한 평균, 그냥 "평균" 이라고도 한다.
$$\bar{X} = \frac{X_1 + X_2 + \cdots + X_n}{n} = \frac{\sum X_i}{n} $$
가중평균 ( weighted arithmetic mean )
같은 모집단에서 표본을 서로 다른 개수로 뽑은 경우(가중치가 존재하는 경우) 평균값을 구할때 사용
$$\bar{X} = \frac{n_1 \bar{X_1} + n_2 \bar{X_2} + \cdots + n_k \bar{X_k}}{n_1 + n_2 + \cdots + n_k} = \frac{\sum n_i \bar{X_i}}{n_i} $$
평균과 최빈값, 중앙값들의 위치 비교
대칭분포
평균 = 중앙값 = 최빈값 모두 같다
왼쪽꼬리분포 ( skewed to the left )
평균은 중앙값보다 작다
오른쪽꼬리분포 ( skewed to the right )
평균은 중앙값보다 크다
분산 ( variance )
: 자료가 평균으로부터 얼마나 떨어져 분포하는지를 가늠하는 숫자 <br />
: 분산이란 각각의 관찰값에 대한 평균과의 편차를 제곱하여 그 평균을 구한 것
모집단의 분산 ( ${ \sigma  }^{ 2 }$ )
표본의 분산 ( ${S}^2$)
$n$ 대신 $(n-1)$을 나누는 이유는, $(n-1)$을 나누어줌으로써 모집단의 $\sigma$를 추정하는데 더 적절한 표준편차를 구하기 위함이다
<img src="http://www.safetygo.com/xe/files/attach/images/384/602/013/02df6495492411476f5dd9608a8718f6.gif",width=450,height=250>
표준편차 ( standard deviation )
: 분산의 양의 제곱근 
모집단의 표준편차 ( $\sigma = \sqrt{\sigma ^2}$ )
표본의 표준편차 ( $S = \sqrt{S ^2}$ )
비대칭도, 왜도 ( skewness )
: 관찰값들이 어느 쪽으로 치우쳐 있는가를 알아보는 척도 <br />
: 분포의 모양이 대칭분포에서 얼마나 벗어났는가
- 정의
<br />
- 피어슨의 비대칭도 ( Pearson's skewness coefficients ) <br />
: 비대칭도 측정을 위해 제안한 간단한 계산법
<img src="http://www.six-sigma-material.com/images/CoefficientofSkewness.GIF", width=200, height=200>
Q. 연습문제
다음의 학생들 25명의 시험점수에서 평균과 표준편차를 구하라.
End of explanation
data.mean()
Explanation: 평균
End of explanation
data.std()
# X - mean
dev_arr = data - data.mean()
dev_arr
# ( X - mean )^2
dev_arr ** 2
# sum( ( X - mean )^2 ) / N
a = (dev_arr ** 2 ).sum() / 25
a
np.sqrt(a)
Explanation: 표준편차
End of explanation
<END_TASK>