실습 · 연습문제 1개
과거 정보만 쓰는 lag 특징 만들기 causal-lag-features
시계열 에서 시각 의 예측에 쓸 입력은 시각 까지 관측된 값만으로 만들어야 한다. 함수 lag_features(x, lags)를 완성해 lag 특징 행렬을 반환한다.
- 반환값
F의 shape은(T, len(lags))이다. F[t, j] = x[t - lags[j]]이다. 즉lags[j] = 0이면 현재 값,lags[j] = 3이면 3단계 전의 값이다.t - lags[j] < 0이어서 값이 없는 칸은np.nan으로 채운다(앞쪽 값을 당겨 채우거나 0을 넣지 않는다).lags에 음수가 있으면 미래 값을 쓰게 되므로ValueError를 낸다.
테스트는 다음을 확인한다.
- 값과 shape이 정의대로인지
- 값이 없는 칸이 NaN인지
- 시각 이후의 값을 바꿔도
F[:t+1]이 바뀌지 않는지 — 이것이 인과적(causal) 입력의 정의다 - 음수 lag을 거부하는지
힌트: np.full((T, len(lags)), np.nan)으로 시작해, lag마다 슬라이스로 채운다.