Prophet을 활용한 매출 예측 분석
기업이 성장하기 위해서는 정확한 매출 예측이 필수적입니다. 과거의 데이터를 바탕으로 미래 매출을 예측하면, 적절한 재고 관리와 마케팅 전략을 수립할 수 있기 때문입니다. 이번 포스팅에서는 Facebook의 시계열 분석 라이브러리인 Prophet을 활용하여 매출 예측을 진행한 결과를 공유하겠습니다.
1. 데이터 개요
이번 분석에서 사용한 데이터는 realistic_sales_data.csv 파일로, 날짜(date)와 매출(sales) 정보가 포함된 시계열 데이터입니다. 데이터의 일부를 확인하면 다음과 같습니다.
date sales
2020-01-01 | 114 |
2020-01-02 | 100 |
2020-01-03 | 121 |
2020-01-04 | 201 |
2020-01-05 | 154 |
Prophet 모델을 활용하여 해당 데이터를 바탕으로 향후 매출을 예측해보겠습니다.
2. Prophet 모델 적용
Prophet은 Facebook에서 개발한 시계열 예측 라이브러리로, 계절성과 트렌드를 자동으로 분석하여 미래 값을 예측하는 데 강점을 가집니다. Python에서 prophet 라이브러리를 설치한 후 아래와 같은 방식으로 적용할 수 있습니다.
import pandas as pd
from prophet import Prophet
df = pd.read_csv('realistic_sales_data.csv')
#df를 ds와 y 컬럼으로 만들어줘야한다.
df.rename(columns={'date': 'ds', 'sales': 'y'}, inplace=True)
#또는 df.columns=['ds','y']
# Prophet 모델 생성
model = Prophet()
model.fit(df)
# 미래 예측을 위한 데이터프레임 생성
future = model.make_future_dataframe(periods=30)
forecast = model.predict(future)
# 결과 확인
model.plot(forecast)
#예측값 시각화
from matplotlib import pyplot as plt
#필요한 데이터만 저장
forecast[['ds','yhat']].to_csv('data/forecast.csv', index=False)
model.plot(forecast)
plt.title('Sales Prediction')
plt.xlabel('Date')
plt.ylabel('Sales')
plt.show()
#트렌드 및 계절성 시각화
model.plot_components(forecast)
plt.title('Sales Prediction')
plt.savefig('data/forecast.png')
plt.show()
#특정 예측치 확인
forecast.set_index('ds').loc['2025-01-01','yhat']
위 코드를 실행하면 Prophet이 자동으로 트렌드를 분석하고 향후 30일간의 매출을 예측합니다.
3. 예측 결과
Prophet을 활용한 예측 결과를 시각화하면 아래와 같은 그래프가 나타납니다.
(예측 그래프 삽입)
그래프에서 볼 수 있듯이, Prophet은 데이터의 트렌드와 계절성을 분석하여 향후 매출 변화를 예측합니다. 특히, 주요 변동 패턴을 반영하여 실질적인 예측값을 제공하는 점이 특징입니다.
#trend - 추세
#yhat lower, upper - 신뢰구간
#yhat - 예측값 (평균값) << 이걸로 예측을 하면 된다.
4. 분석 결과 및 활용 방안
Prophet을 활용한 매출 예측을 통해 다음과 같은 인사이트를 얻을 수 있습니다.
- 매출의 상승·하락 트렌드 분석: 특정 기간에 매출이 상승하는 경향이 있는지 파악할 수 있습니다.
- 미래 매출 기반의 전략 수립: 재고 관리 및 마케팅 계획을 보다 효과적으로 수립할 수 있습니다.
- 비즈니스 의사결정 지원: 예측된 데이터를 바탕으로 장기적인 사업 운영 전략을 마련할 수 있습니다.
앞으로 Prophet을 활용한 시계열 분석을 더욱 심화하여, 프로모션 효과 분석이나 계절성 변화를 정밀하게 평가하는 방향으로 확장해볼 수 있습니다.
마무리
이번 포스팅에서는 Prophet을 활용한 매출 예측 방법을 소개했습니다. 시계열 데이터를 다룰 때 Prophet은 매우 강력한 도구이며, 간단한 코드로 미래 예측이 가능하다는 점이 큰 장점입니다. 앞으로 Prophet을 활용한 다양한 분석 사례를 연구하여 더욱 정교한 예측 모델을 구축해 나갈 예정입니다.
궁금한 점이나 더 알고 싶은 내용이 있다면 댓글로 남겨주세요!