기본 콘텐츠로 건너뛰기

라벨이 inverse difference인 게시물 표시

[matplotlib]quiver()함수

[시계열] 시계열 데이터의 차분(difference)과 역차분(inverse difference)

시계열 데이터의 차분(difference)과 역차분(inverse difference) 시계열 모형은 데이터의 정상성이 요구됩니다. 정상성을 확보하기 위해 데이터의 차분(difference)이 적용됩니다. 차분된 데이터는 현재값에서 이전 값의 차를 사용이므로 원 데이터가 가질 수 있는 추세가 제거될 수 있습니다. 즉, 차분된 데이터의 경우 연속된 데이터들 사이의 자기상관이 최소화되므로 평균이나 분산등의 일정성이 유지되는 정상성(stationary)가 확보될 수 있습니다. 예를 들어 다음 샘플에 대해 차분을 실행합니다. np.random.seed(3) x=pd.Series(np.random.randint(1, 11, 4)) x 0 9 1 10 2 4 3 9 dtype: int32 위 데이터 x의 차분은 다음과 같습니다. pandas객체.diff() 함수를 사용할 수 있습니다. $$\begin{align} 10-9=1 \quad& x_1-x_0=x^1_1\\ 4-10=-6\quad& x_2-x_1=x^1_2\\9-4=6\quad & x_3 - x_2 = x^1_3\\x_i :\quad&\text{원 데이터}\\ x^1_i :\quad&\text{1차 차분된 데이터}\end{align}$$ x1=x.diff() x1 0 NaN 1 1.0 2 -6.0 3 5.0 dtype: float64 위 과정은 1번 차분한 것으로 1차 차분이라합니다. 위 x1을 다시 차분하면 2번 차분, 즉 2차 차분이 됩니다. $$\begin{align} -6 - 1=-7 \quad& x^1_2-x^1_1=x^2_2\\ 5-(-6) = 11\quad& x^1_3-x^1_2=x^2_3\\\ x^2_i :\quad&\text{2차 차분된 데이터}\end{align}$$ x2=x.diff().diff() x2 0 NaN 1 NaN 2 -7.0 3 11....