之前想用python,但是fbprophet一直安装不成功,说是不适用windows系统,在IOS系统和linux系统会比较容易(尚未验证)。
后来转用R,比较顺利。
处理时序模型的优点:
1.可以自动处理缺失数据。2.可以人为指定异常点以及节假日。
library(prophet)
library(tidyverse)
help(package='prophet')
help(prophet)
#only yearly,weekly,daily data
SR<-read.csv(file='C:/Users/13771/Desktop/dataf.csv', header=TRUE, sep=",")
head(SR)
#set cap
SR$cap<-800000
#set pre periods
library(tidyverse)
library(dplyr)
library(tidyr)
library(tibble)
library(lubridate)
yuandan <- tibble(holiday = 'yuandan',
ds = ymd(c('2018-01-01','2019-01-01','2020-01-01','2021-01-01')),
lower_window = 0,upper_window = 3)
#build model
#choose linear or logistic
#default daily seasonality
m<-prophet(SR,growth='logistic',weekly.seasonality = 'true',holidays=yuandan)
m <- fit.prophet(m, SR)
future <- make_future_dataframe(m,periods=30)
future$cap<-800000
#forecast
forecast <- predict(m,future)#plot
plot(m, forecast)