2022년 4월 11일 월요일

[기록용] 추세 데이터를 구성하는 방법

선형회귀로 구성된 1차 추세선은 f(x) = ax + b 라는 일차식으로 구성하게 됩니다. 

추세를 구하는 공식은 여러 방식으로 구하는 법을 찾을 수 있습니다. " Head First Statistics " 의 책에서는 간단한 공식을 제공하고 있는데 x와 y의 평균을 구해서

분자에는 (x - xAvg)^2 의 합을 구한값을 사용하고,

분모에는 (x - xAvg ) * (y-yAvg) 의 곱을 구해서 ax 의 a 를 구하게 됩니다.

y = ax + b 이기 때문에 b = y - ax 의 값이니, b = yAvg - a*xAvg 를 통해서

값을 확인해 볼 수 있습니다.

예를 들어 x = [1,2,3,4,5,6] 이고, y = [104, 117, 131, 145, 160, 171] 의 값을 가지고 있다고 가정하면, x의 평균은 3.5 이고, y의 평균은 138.0 입니다.

분모의 x 차의 제곱의 값은 17.5 가 되고 x차와 y차의 곱의 누적합은 239.0 이 됩니다. 결국 239.0/17.5 가 위의 a 값인 기울기가 되고, b = 138.0 - (13.6571 * 3.5 ) b = 90.2 의 값을 구하게 됩니다. 결국 위 예시된 값은 y = 13.6571428 *x + 90.2 의 식으로 표현될 수 있습니다.


만약 데이터의 각 단위가 제각각일 때 이들을 모두 하나의 수치 범위로 일종의 정규화를 하고자 한다면 어떻게 할 수 있을 지 잠시 생각해 보았습니다.


가령 어떤 주식은 1000에서 시작하고 어떤 주식은 15000 에서 시작하고 각 시작이

다른 항목을 가급적 유사한 범위의 기울기로 만들려면 시작점의 데이터가 절편(intercept) 이 가급적 0의 값을 지닐 수 있도록 구성하면, 다른 범위의 데이터라도

기울기 로만 비교할 수 있지 않을까 하는 생각을 해 보았습니다.

전체를 수치화 하여 비교해 보려면 각 단위 변화량을 유사하게 묶어둘 필요성이 있어서

입니다.

5일간의 변동이 1000, 1005, 1010, 1015, 1020 으로 변화하였다면,

x의 변화를 0, 1, 2, 3, 4 로 두고,y의 변화를 (1000/1000 -1)*100, (1005/1000-1)*100 ,,, 등으로 y 값을 조정 하면 x 가 0일 때 y가 0으로 구성하게

될 것이므로 아주 변화가 많지 않은 경우 절편의 값은 최소화 하여 구성 할 수 있을 것 같습니다.

이런 방식으로 데이터를 수치화 하여 일괄 비교를 가능하게 만들어 볼 수 있을 것 같습니다.





댓글 없음:

댓글 쓰기