# 공분산을 계산하는 함수
    def covariance( x, y ):
        n = len( x )
        return sum_of_product( deviation( x ), deviation( y ) ) / ( n-1 )
    
    # 표준편차를 계산하는 함수
    def standard_deviation( x ):
        return math.sqrt( variance( x ) ) # math 모듈의 제곱근 함수 sqrt( )를 사용
    
    # 상관계수를 계산하는 함수
    def correlation( xs, ys ):
        stdev_x = standard_deviation( xs )
        stdev_y = standard_deviation( ys )
        if stdev_x > 0 and stdev_y > 0:
            return covariance( xs, ys ) / ( stdev_x * stdev_y )
        else :
            return 0 # 편차가 존재하지 않는다면 상관관계는 0
    
    # x와 y 리스트와 correlation( ) 함수를 사용해 상관관계를 계산
    x=[ 41, 43, 38, 37 ]
    y=[ 61, 63, 56, 55 ]
    print( correlation( x, y ) )
    
    x=[ 35, 45, 35, 34 ]
    y=[ 65, 54, 64, 67 ]
    print( correlation( x, y ) )
    
    x=[ 35, 45, 35, 34 ]
    y=[ 65, 66, 64, 68 ]
    print( correlation( x, y ) )
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.