파이썬(Python)/문법

분산, 표준 편차란? 파이썬으로 쉽게 계산하기 (예제로 이해하기)

끄적끄적아무거나 2021. 10. 2. 16:27
반응형

분산, 표준 편차란? 

 

앞서 평균 제곱, 분산,자유도 (Mean Square, Variance,DOF)에 대해 설명하였다. 상세 내용을 보고 싶다면 괄호안의 링크를 참조하길 바란다. (https://scribblinganything.tistory.com/265)

 

다시 정의 하면 아래와 같다. 

 

분산을 수식으로 전개하면 아래와 같다.

알려진 평균값 u에서 어느정도 벗어 났는지를 알려준다. 제곱을 치함으로써 평균 대비 아래 위로 방향성에 상관없이 크기로 결정한다. 

표준 편차는 분산에 root를 씌운값으로 아래와 같다.

 


파이썬으로 계산하기 (예제로 이해하기)

 

앞서 수식을 통해 분산을 구하기 위해서는 평균값을 먼저 구한 뒤 일일이 차를 더해서 나눠주는 과정을 거쳐야 한다. 하지만 아래와 같이 코드를 사용할 경우 몇줄의 코드로 작성할 수 있다.

 

코드>>

import random
import numpy

a_list = []
for _ in range(6):
    a_list.append(random.randrange(1,100))

a_std = numpy.std(a_list)
a_var = numpy.var(a_list)

print("a_list : ", a_list)
print("Standard variation : ", a_std)
print("Variance : ", a_var)

 

결과>>

a_list :  [97, 98, 52, 15, 3, 78]
Standard variation :  37.47628880001623
Variance :  1404.472222222222

 

주석>>

numpy 모듈을 사용해서 한줄 만으로 분산과 표준편차를 각 각 구할 수 있었다. 예제의 리스트는 5개만으로 랜덤값을 넣었지만 여러개가 있어도 짧은 시간 만에 계산이 가능하다. 

 

참고로 위 결과의 표준편차를 제곱할 경우 분산과 같은 값이 나옴을 알 수 있다.

 

 

반응형