시계열 데이터를 분석하고 예측하기 위해서는 다양한 알고리즘들을 적용할 수 있습니다
그 중에서도 시계열 스케줄 알고리즘은 빠르게 변화하는 데이터를 다루는데 특히 유용한 알고리즘 중 하나입니다
이번 글에서는 시계열 스케줄 알고리즘을 만들 때 유용하게 사용할 수 있는 2가지 문법에 대해 알아보도록 하겠습니다
1. get_loc()
시계열 데이터를 다룰 때는 자주 인덱스를 사용하게 됩니다. Pandas에서는 시계열 데이터의 인덱스를 효율적으로 처리할 수 있도록 다양한 메소드를 제공합니다. 이번에는 get_loc() 메소드와 get.loc()-1 메소드에 대해 알아보겠습니다.
get_loc() 메소드는 인자로 전달된 값의 인덱스를 반환합니다. 예를 들어, 다음과 같은 시계열 데이터가 있다고 가정해 봅시다.
get_loc() 메소드는 해당 값이 인덱스에서 몇 번째 위치에 있는지를 반환합니다. 따라서 '2022-01-15'는 14번째 위치에 있기 때문에 14가 출력됩니다.
반면에 get.loc()-1 메소드는 인자로 전달된 값을 가지는 데이터에서 1을 뺀 값을 반환합니다. 예제를 통해 이를 확인해 보겠습니다.
이렇게 인덱스에서 14번째 위치에 있는 데이터는 '2022-01-15'이며, get.loc()-1 메소드를 사용하면 '2022-01-14'를 반환합니다.
이를 통해 get.loc()-1 메소드는 인자로 전달된 값을 가지는 데이터에서 1을 뺀 값을 반환하는 것을 알 수 있습니다.
2. diff() / diff(-1)
시계열 데이터를 다룰 때는 데이터 간의 차이를 계산하는 경우가 자주 있습니다.
Pandas에서는 diff() 메소드를 사용하여 인접한 두 데이터의 차이를 계산할 수 있습니다. 예를 들어, 다음과 같은 시계열 데이터가 있다고 가정해 봅시다.
이제 diff() 메소드를 사용하여 인접한 두 데이터의 차이를 계산해 보겠습니다.
diff() 메소드는 각 데이터와 그 이전 데이터 간의 차이를 계산합니다. 따라서 결과 값은 첫 번째 데이터는 이전 데이터가 없기 때문에 NaN이 되고, 두 번째 데이터부터는 이전 데이터와의 차이가 계산됩니다.
이제 diff(-1) 메소드를 사용해보겠습니다.
diff(-1) 메소드는 diff()와 달리 인접한 두 데이터가 아니라, 현재 데이터와 그 다음 데이터 간의 차이를 계산합니다.
diff(-1) 메소드는 현재 데이터와 다음 데이터 간의 차이를 계산하기 때문에, 결과 값은 마지막 데이터는 다음 데이터가 없기 때문에 NaN이 되고, 그 외의 데이터는 현재 데이터와 다음 데이터 간의 차이가 계산됩니다.
이처럼 diff()와 diff(-1) 메소드는 시계열 데이터에서 각 데이터와 그 이전 혹은 다음 데이터 간의 차이를 계산하는 데 사용됩니다. 이를 통해 시계열 데이터의 변화를 빠르게 파악할 수 있습니다. 하지만 두 메소드는 차이를 계산하는 기준이 다르기 때문에, 결과 값 또한 다르게 나타납니다. 따라서 사용하기 전에 각 메소드의 차이를 명확히 이해하고 사용해야 합니다