이제까지 정상성에 대한 판단 방식과 비정상성 데이터를 정상성 데이터로 바꾸는 방법들에 대해 포스팅했다. 기초적인 내용들이지만 이를 토대로 정상성 데이터를 이용한 시계열 데이터(Time Series) 예측(Forecasting)을 수행할 수 있다. 한번 더 시계열의 특성을 짚고 넘어가자면,$$ 시계열 데이터 = 규칙적인 패턴+불규칙적인 패턴 $$으로 볼 수 있다. 이중 규칙적인 패턴은 이전 결과 사이 발생하는 자기상관성과(Autocorrelativeness)과 이후 결과에 편향성을 초래하는 이동평균(Moving Average) 현상으로 구분할 수 있다. 반대로 불규칙적인 패턴은 white noise라 칭하고 평균이 0이며 일정한 분산을 지닌 정규분포에서 추출된 임의의 수치로 정의하고 있는데, 이런 정규분..
주요 개념 Augmented Dickey-Fuller Test (ADF Test) AR, MA, ARMA, ARIMA 모델을 적용하기 전, 우선 시계열 데이터를 정상성 데이터로 바꾼 후 사용하는 것이 바람직하다. 정상성을 띄기 위해선 시계열 데이터의 평균, 분산이 시간에 따라 일정해야 하고 lag에 따른 공분산이 일정해야 한다. 이를 위해 로그 변환을 해주거나 n차 차분을 적용해줄 수 있다. 시계열에 대한 자세한 사항은 여기를 참고하면 된다. 정상성에 대한 검증은 시각화를 하거나 상황에 대해 직관적인 판단을 통해 알 수 있지만 통계적인 정량적 방법으로 검증할 수 있는 방법을 사용하는 것이 데이터를 분석할 때 더 납득할 수 있는 방법이 될 것이다. 이를 위해 사용하는 방법 중 하나가 Augmented Di..
상관도표(Correlogram)는 시계열 데이터를 분석에서 자주 활용되는데 자기상관함수(Autocorrelation Function, ACF) 또는 편자기상관함수(Partial Autocorrelation Function, PACF)를 그래프로 표현한 것을 뜻한다. 우리가 자주 말하는 Correlation은 두 변수 간의 관계를 -1~1 사이로 정규화한 값으로 표현하는 척도인데, Autocorrelation은 time shifted된 자기 자신의 데이터와의 상관성을 의미한다. 이 ACF와 PACF는 ARIMA 모델의 파라미터가 되는 p, d, q의 최적 차수를 탐색할 때 유용하게 사용된다. p는 AR, d는 차분 횟수, q는 MA와 관련이 있는 파라미터이다. ACF와 PACF 설명 이전에 자기회귀 모형(..
Error: json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 366 (char 365) Json으로 데이터를 load하여 parsing할 때 발생할 수 있는 에러이다. api의 결과값을 잘 가져와 값을 수신한 것처럼 보이는데 막상 json.loads로 파싱해보면 에러가 나는 경우가 많다. 위의 에러 또한 json 데이터를 파싱할 때 나온 에러이다. 직관적으로 해당 string 데이터의 해당 위치의 +- 5 이내로 print하여 보면 어떠한 문자가 빠졌는지 알 수 있다. 하지만 나는 json 데이터 사용에 익숙하지 않아서인지 이 방식만으로는 아래와 같이 출력되어 발견하기 힘들었다. pr..
1. script코드 입력하기- 블로그 관리 - 왼쪽 바에서 꾸미기 -> 스킨 편집 - html - script 코드 삽입 위 스크립트 코드는 html의 head 태그 안에 작성하면 된다. MathJax는 수학기호 입력을 위한 LaTex를 사용하게 해주는 JavaScript 라이브러리이다. 2. 수식 입력하기$$ math(\displaystyle F\left(s\right) = \mathcal{L}\left\{ f\right\} \left(s\right) \equiv \int_{0}^{\infty}e^{-st}f\left(t\right)dt) $$ 위와 같이 $$ 기호 사이에 수식을 적으면 된다.여러 기호가 많이 들어가 있는 라플라스 변환을 표현해 보았다.$$ math(\displaystyle F\lef..
정상성(Stationarity)정상성(Stationarity)이란 언제 관측되는지에 관계없이 어떤 시점에 관찰하더라도 예측할 수 있는 패턴을 발견할 수 없는 것을 뜻한다.정상성에 대한 자세한 사항은 여기를 참조하면 된다. 로그 변환(Log Transform)비정상성 시계열을 정상성으로 변환하는 방법은 로그 변환(Log Transformation)과 차분(Differencing) 2가지가 있다.우선 로그 변환(Log Transformation)이란 변동폭이 일정하지 않은 경우 사용할 수 있는데 일반적인 수학의 x를 log(x)로 바꾸는 변환 방식이다. 로그 변환은 원본 데이터의 왜곡을 줄이거나 제거하는데 여기서 주의할 점은 원 데이터가 로그 정규 분포를 따르거나 대략 따라줘야 한다. 그렇지 않으면 로그 변..