使用R的prophet包做一个简单的时序预测

      上一篇博客针对prophet包上传了自己的代码,今天这篇博客我跟大家讲述一下prophet包工作原理,以及我对该模型做的一些优化。
      上次使用prophet包做项目主要分为了四个部分,分别是读取数据,设定节假日(奇异点),训练模型,输出自定义结果这四部分,现在我就上个项目做分别讲解。

      一、初始化:装载模型包并读取数据
     
library(prophet)
library(dplyr)
#初始化数据
all<-read.csv('d:/Rdata/zjd/ts/all.csv',na.string='NA',header=T)
qb30<-read.csv('d:/Rdata/zjd/ts/qb30.csv',na.string='NA',header=T)
history30n <- data.frame(ds = seq(as.Date('2016-01-01'), as.Date('2017-09-11'), by = 'd'), y = qb30$yn)
plot(history30n$ds,history30n$y)
history45n <- data.frame(ds = seq(as.Date('2016-01-01'), as.Date('2017-09-11'), by = 'd'), y = qb45$yn)

      读取数据这一部分就不用多说了,基本使用csv格式,最主要的一点是一定要保证是一列数据,并且如果是每天的数据,一定要设定好起始时间点,我的上一个版本是在生成数据集的时候设定时间,因每次都要逐条修改(因为金融产品的期数不同,还非常多),后来我直接用变量代替了,这样只用修改一次变量就行。代码如下:

alln<-read.csv('d:/Rdata/zjd/ts/qball.csv',na.string='NA',header=T)
start<-c('2017-01-01')
end<-c('2017-10-22')
# historyalln <- data.frame(ds = seq(as.Date('2017-01-01'), as.Date('2017-09-18'), by = 'd'), y = alln$yn)
history30 <- data.frame(ds = seq(as.Date(start), as.Date(end), by = 'd'), y = alln$y2031)
history45 <- data.frame(ds = seq(as.Date(start), as.Date(end), by = 'd'), y = alln$y4050)

      二、设定节假日(数据奇异点)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值