다음은 앞의 상관계수 계산을 프로그래밍한 것이다.
# 상관계수를 계산하기 위해 필요한 함수들
import math
# 평균을 계산하는 함수
def mean( x ):
return sum( x ) / len( x )
# 두 리스트 곱의 합계, 즉 엑셀의 SUMPRODUCT( ) 함수와 같다
def sum_of_product( xs, ys ):
return sum( x * y for x, y in zip( xs, ys ) )
# 제곱합을 계산하는 함수
def sum_of_squares( v ):
return sum_of_product( v, v )
# 편차를 계산하는 함수
def deviation( xs ):
x_mean = mean( xs )
return [ x - x_mean for x in xs ]
# 분산을 계산하는 함수
def variance( x ):
n = len( x )
deviations = deviation( x )
return sum_of_squares( deviations ) / ( n-1 )