1. 분산과 표준편차
- 철수와 사장님이 김밥집에서 일할 때 철수의 김밥 모양이 제각각이었음. 그래서 무게를 재 보니 사장님과 철수 모두 100g으로 동일한 무게가 나왔음
- 그러나 도수분포도를 보면 철수가 만든 김밥이 크기가 고르지 않다는 사실을 알 수 있음

| 사장님 | 94 | 105 | 107 | 106 | 88 |
| 철수 | 117 | 84 | 95 | 72 | 132 |
>>> import numpy as np #numpy모듈을 np로 불러오겠음
>>> owner = [94, 105, 107, 106, 88] #사장님의 데이터 지정
>>> mean = np.mean(owner) #평균을 구해라
>>> sum = 0 #답(멀어진 정도의합계)을 넣을 변수를 초기화한다(?)
>>> for d in owner: #모든 데이터에 대해
... sum = sum + (d-mean) #데이터-평균의 합계를 구한다
...
>>> sum
0.0
- 평균에서 멀어진 정도, 각각의 멀어진 정도를 모두 더하면 전체적인 멀어진 정도를 구할 수 있음
- 모든 데이터를 평탄하게 만든 값이 평균값이므로 이 평균값의 차를 모두 더하면 당연히 0이 될 것
- 데이터 값의 평균을 제곱한 값을 데이터 개수로 나누면 분산을 구할 수 있음
>>> sum = 0
>>> for d in owner:
... sum = sum + (d - mean)**2 #데이터-평균을 제곱한 값
...
>>> sum
290.0
(여기서의 sum = sum + (d-mean)**2
>>> import math #math 함수를 불러오겠음
>>> variance = sum/5 #분산을 구하라
>>> stdev = math.sqrt(variance) #표준편차(제곱한 값을 되돌리기 위해 루트로 계산한 값)
>>> variance, stdev #분산, 표준편차를 표시해라
(58.0, 7.615773105863909)
| 분산 | 표준편차 | |
| 사장님 | 58 | 8 |
| 철수 | 476 | 22 |
2. 표준 점수
- 표준화 = (데이터-평균)/표준편차
- 표준점수 = ((점수-평균)/표준편차)*10 + 50
| 4월 | 9월 | |
| 점수 | 320점 | 430점 |
| 평균 | 278점 | 388점 |
| 표준편차 | 60 | 60 |
>>> def dev_value(score, mean, stdev): #dev_value(함수의 인수), 함수의 인수는 점수, 평균값, 표준편차임
... return (score - mean) / stdev * 10 + 50 #표준 점수를 계산하라
...
>>> dev_value(320, 278, 60) #4월의 표준 점수를 계산하라
57.0
>>> dev_value(430, 388, 60) #9월의 표준 점수를 계산하라
57.0
'파이썬으로 다시 배우는 핵심고등수학 (python) > 07장 : 통계와 난수' 카테고리의 다른 글
| 7-5. 무작위로 값 선택하기 (0) | 2021.02.19 |
|---|---|
| 7-4. 데이터를 보고 추측하기 (0) | 2021.02.19 |
| 7-3. 관계 조사하기 (0) | 2021.02.19 |
| 7-1. 통계란? (0) | 2021.02.18 |