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

 

 

+ Recent posts