본문 바로가기
인공지능/인공지능

Prophet 라이브러리를 이용한 Time Series 데이터 예측하기

by coding_su 2023. 1. 2.

📝Prophet 라이브러리를 이용한 Time Series 데이터 예측하기

우선 라이브러리를 준비해야하지만 지금 사용하는 google colab에는 깔려 있으니 따로 인스톨은 안했다

※ 프로펫 라이브러리가 fbprophet에서 prophet으로 변경되었음

Time Series Data? 날짜별로 데이터가 있는 형식

 

csv파일을 읽어와서 데이터 분석해보고 날짜순으로 정렬한다

(데이터 분석코드 생략)

# avocado.csv 데이터 읽어와서 분석하기
df = pd.read_csv('avocado.csv', index_col=0)

df.describe()

# 날짜를 정렬해준다
df.sort_values('Date', inplace= True)

 

프로펫 분석을 위해서는 날짜와 예측하고싶은 데이터가 필수로 있어야한다

# 프로펫 분석을 위해 두개의 컬럼만 엑세스
avocado_prophet_df = df[ ['Date', 'AveragePrice'] ]

# Prophet 을 이용한 예측 수행을 위해 ds와 y로 컬럼명을 셋팅
avocado_prophet_df.columns = ['ds', 'y']

 

프로펫으로 예측하기

# 1. 라이브러리를 변수로
prophet = Prophet()

# 2. 데이터로 학습 시킨다
prophet.fit(avocado_prophet_df)

# 3. 예측하고자 하는 기간을 정해서 비어있는 데이터프레임을 만든다(365일치를 예측)
future = prophet.make_future_dataframe(periods= 365, freq= 'D')

# 4. 이제 미래 날짜까지 만들어져 있으니 위의 future 데이터프레임을 이용해서 예측할 수 있다
forecast = prophet.predict(future)

# 5. yhat 값을 확인해보기
forecast

 

프로펫 라이브러리에 차트도 제공한다

※ 차트가 두개씩 나와서 plt.savefig 해줬다

prophet.plot(forecast)

prophet.plot_components(forecast)

댓글