R中prophet包说明文档(一)

2023-11-03



名称:自动预测过程

版本:0.2.1

日期:2017-11-08

描述:实现了一个时间序列的预测过程,基于能够拟合年度、周等周期以及假期等因素的非线性趋势的加法模型。模型要求至少一年以上的周期性历史数据。prophet模型对于缺失值、趋势突变以及大量离群点的数据有较好的鲁棒性。

平台:R3.2.3以上版本),Rcpp0.12.0以上版本)

载入包: dplyr, extraDistr, ggplot2, grid,rstan, scales stats tidyr

作者: Sean Taylor [cre, aut] , BenLetham[aut]

主要联系人:Sean Taylor<sjt@fb.com>

---------------------------------------------------------------------------------------------------------

下面是分别介绍包中方法的具体使用,共12个方法:

(一)prophet —— prophet预测器

描述:

预测器,模型生成器

用法:

prophet( df = NULL, growth ="linear", changepoints = NULL, n.changepoints = 25,

  yearly.seasonality ="auto", weekly.seasonality = "auto", daily.seasonality ="auto",

  holidays = NULL,seasonality.prior.scale = 10, holidays.prior.scale = 10,

  changepoint.prior.scale = 0.05,mcmc.samples = 0, interval.width = 0.8,

  uncertainty.samples = 1000, fit= TRUE, ... )

参数说明:

df                                       (选择项)历史数据框,必须包含列:dsdate型)、y(时间序列),当逻辑增长时,必须包含cap列指明每一个dscapacity。不提供此参数时,模型会被实例化但是不会被拟合,可以使用fit.prophet(m,df)来拟合模型。

growth                                  字符串‘linear’‘logistic’,表示线性或者逻辑增长趋势。

changepoints                       日期型向量,表示潜在的拐点,不指定时系统自动选择。

n.changepoints                    拐点数量,当changepoints有输入时不用指定,默认情况选择df$ds的前80%。

yearly.seasonality                 拟合年度季节性,可以为‘auto’TRUEFALSE,或者是一些傅里叶成分来生成。

weekly.seasonality                拟合周度季节性,可以为‘auto’TRUEFALSE,或者是一些傅里叶成分来生成。

daily.seasonality                   拟合日的季节性,可以为‘auto’TRUEFALSE,或者是一些傅里叶成分来生成。

holidays                              数据框包含holiday列(字符型)和ds列(日期型),以及可选列lower_windowupper_window表示节假日所跨度的时间段。例如lower_window=-2表示从节假日当天往前延长两天,还可以有一列可选列prior_scale指明每个节假日的现有规模。

 seasonality.prior.scale           参数用于调节季节模型的强度,较大的值允许模型适应较大的季节波动,较小的值则会抑制季节变动。可以使用add_seasonality来指定个别季节性。

holidays.prior.scale                参数用于调节节假日成分模型的强度,除非在节假日输入中被重写。

changepoint.prior.scale         参数调节自动改变点选择的灵活性,较大的值会产生较多的改变点,较小的值则产生较少的转折点。

mcmc.samples                       整型,大于0将用指定的MCMC样本进行完全贝叶斯推理,为0时则进行MAP估计(最大后验概率估计)。

interval.width                         数值型,预测的不确定性区间的宽度。

uncertainty.samples               用于估计不确定区间的模拟绘图的数量

fit                                            布尔型,FALSE时表示模型被初始化但是不进行拟合。

输出值

prophet预测模型

(二)make_future_dataframe —— 新建一个数据框包含将来需要预测的日期

描述:

新建一个数据框,指明需要预测到将来多长时间

用法:

make_future_dataframe (m, period,freq = ’day’, include_history = TRUE)

参数说明:

m                                           Prophet对象

periods                                  将来要预测时间范围,整型

freq                                    ‘day’‘week’‘month’,‘quarter’‘year’1 (1 sec)60 ( 1 minute ) or 3600 ( 1 hour )

include_history                     布尔值,是否包含历史日期

输出值

数据框,从m$history结束处延伸至需要预测时间点的周期数

(三)predict.prophet —— 使用prophet模型进行预测

描述:

使用prophet模型进行预测

用法:

## S3 method for class‘prophet’

predict (object, df = NULL, …)

参数说明:

object                                                     Prophet对象

df                                      包含预测日期(column ds),逻辑增长时需要容量(column cap),如果不指定则在历史数据基础上预测 【make_future_dataframe()返回的数据框】

输出值

预测结果数据框

(四)plot.prophet ——绘制prophet预测结果图

描述:

绘制prophet预测结果图

用法:

## S3 method for class‘prophet’

plot (x, fcst, uncertainty =True, plot_cap = TRUE, xlabel = “ds”, ylabel = “y”, …)

参数说明:

x                                           Prophet对象

fcst                                       predict(m, df)返回的数据框

uncertainty                          布尔值,指明是否画出yhat的预测区间,fcst中必须有yhat_loweryhat_upper字段

plot_cap                              布尔值,指明是否画出capacity

xlabel                                  x轴的标签

ylabel                                  y轴的标签

输出值

ggplot2

(五)plot_forecast_component —— 绘制prophet预测结果的分量图

描述:

绘制prophet预测结果分量图,包含总体趋势、节假日以及周度、年度季节因素

用法:

plot_forecast_component (fcst,name, uncertainty = True, plot_cap = TRUE)

参数说明:

fcst                                       predict(m, df)返回的数据框

name                                   字符串,fcst列的名字

uncertainty                          布尔值,指明是否画出yhat的预测区间,fcst中必须有yhat_loweryhat_upper字段

plot_cap                              布尔值,指明是否画出capacity

输出值

ggplot2

(六)prophet_plot_components —— 绘制预测结果的各个成分图

描述:
 绘制预测结果的各个成分图,输出一个ggplot2图像包括趋势、周度、年度季节以及节假日因子的图形面板。
用法:
 prophet_plot_components(m, fcst, uncertainty = TRUE, plot_cap = TRUE, weekly_start = 0, 
       yearly_start = 0)
参数说明:

m                                                   Prophet模型对象
fsct predict(m, df)返回的数据框
uncertainty 布尔型,指定是否趋势的不确定区间,即fcst数据框中的trend_lower和trend_upper列
plot_cap 布尔值,指明是否画出capacity
weekly_start 整型,指明周季节图中起始的天,0(默认)表示一周从周六开始。
yearly_start 整型,指明年度季节图中开始的天,0(默认)表示从1月1日开始。

输出值:
返回一个列表,包含绘制ggplot图像的参数。

















本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R中prophet包说明文档(一) 的相关文章

随机推荐

  • Python基础内容:适合刚入门的朋友看的教程

    1 基本概念 1 1 四种类型 python中数有四种类型 整数 长整数 浮点数和复数 整数 如 1 长整数 是比较大的整数 浮点数 如 1 23 3E 2 复数 如 1 2 j 1 1 2 2j 1 2 字符串 字符串 字符的序列 pyt
  • ResNet50模型学习笔记

    ResNet的各种网络结构图如下图所示 ResNet的层级结构 Layer gt Block gt Stage gt Network Layer是最小的单位 ResNet50代表有50层 Block由两层或者三层conv层叠加而成 50层以
  • JavaWeb-form传值(从一个jsp页面传数据到另一个jsp页面)

    第一个页面 login jsp
  • OkHttpClient获取文件并下载

    需要调用第三方接口获取文件 本地通过网页直接下载 public Result doExcelExport String repoId HttpServletResponse response try if StringUtils isBla
  • nginx配置指南

    nginx conf配置 找到Nginx的安装目录下的nginx conf文件 该文件负责Nginx的基础功能配置 配置文件概述 Nginx的主配置文件 conf nginx conf 按以下结构组织 配置块 功能描述 全局块 与Nginx
  • 行为型设计模式之策略模式【设计模式系列】

    系列文章目录 C 技能系列 Linux通信架构系列 C 高性能优化编程系列 深入理解软件架构设计系列 高级C 并发线程编程 设计模式系列 期待你的关注哦 现在的一切都是为将来的梦想编织翅膀 让梦想在现实中展翅高飞 Now everythin
  • C++基础---递归函数

    1 递归函数 1 1 递归函数的定义 递归函数 即在函数体中出现调用自身的函数 即函数Func Type a 直接或间接调用函数本身 递归函数 在数学上 关于递归函数的定义如下 对于某一函数f x 其定义域是集合A 那么若对于A集合中的某一
  • centos安装常见软件

    安装tar yum install y tar 安装zip yum install unzip y 安装上传 yum y install lrzsz y 安装git 方式一 yum install git y 方式二 开发会用的软件 yum
  • STM32F1应用DMA——串口收发不定长数据

    STM32F1应用DMA 串口收发不定长数据 使用STM32自带DMA传输数据 可以减轻CPU负担 只需设置一些参数即可发送想要发送的数据 以下是STM32F1系列芯片测试过的部分代码 可实现DMA串口收发数据 下图来自STM32官网的手册
  • webrtc中peerconnection_client生成vs工程文件

    下面是将peerconnection client从整个webrtc工程文件中分离出来的过程记录 一 webrtc项目的本地编译 生成Ninja配置文件 gn gen target x64 args is clang false use l
  • Matplotlib绘制动图以及绘制平滑曲线

    文章目录 绘制动图 FuncAnimation 方法 ArtistAnimation 方法 绘制平滑曲线 使用 scipy ndimage gaussian filter1d 高斯核类绘制平滑曲线 使用 scipy interpolate
  • python怎么做多个矩阵_用Python程序添加两个矩阵

    用Python程序添加两个矩阵 在此程序中 您将学习使用嵌套循环和Next列表理解来添加两个矩阵 并显示它们 要理解此示例 您应该了解以下Python编程主题 在Python中 我们可以将矩阵实现为嵌套列表 列表内的列表 我们可以将每个元素
  • openmpi编译安装

    概念原理 OpenMPI是一个免费的 开源的MPI实现 兼容MPI 1和MPI 2标准 OpenMPI由开源社区开发维护 支持大多数类型的HPC平台 并具有很高的性能 功能描述 OpenMPI借助TCP IP网络连接的多台计算机 以此分发数
  • 经典多模态模型

    整点传统多模态学习 下游任务 在讲模型之前 我们先说说 传统多模态任务是下游任务 图文检索 Image Text Retrieval 里面包含图像到文本检索 文本到图像检索 给定一个数据库 搜索到ground truth的图像文本对 因为是
  • NDIS网络数据监控程序NDISMonitor(2)-----驱动与应用的中间层NdisHook

    转载请标明是引用于 http blog csdn net chenyujing1234 欢迎大家拍砖 本工程是驱动vpcknt的一个封闭层而已 比较简单 一 导出的API接口分析 1 Start 1 加载驱动vpcknt sys vpckn
  • List转换String,String转List的几种方法

    一 List转String的方法 将一个Java集合List转换为String方法比较多 可以使用String join StringBuilder Stream流等方法 下面举几个常用的示例 1 使用String join 方法 impo
  • c51语言的指针分几类,- 第五课 C51变量

    sfr P1 0x90 这里没有使用预定义文件 sbit P1 0 P1 0 而是自己定义特殊寄存器 sbit P1 7 0x90 7 之前我们使用的预定义文件其实就是这个作用 sbit P1 1 0x91 这里分别定义P1端口和P10 P
  • react-router-dom v6的变化

    react router dom v6 原文地址 1 useNavigate替代useHistory 在v6版本useHistory被新hookuseNavigate代替 用法也发生的很大的变化 v5 import useHistory f
  • 如何画出频谱图 matlab

    如何画出频谱图 matlab matlab 代码 绘制出的图片 matlab 代码 fs 100 sample frequency Hz t 0 1 fs 10 1 fs 10 second span time vector x 1 3 s
  • R中prophet包说明文档(一)

    名称 自动预测过程 版本 0 2 1 日期 2017 11 08 描述 实现了一个时间序列的预测过程 基于能够拟合年度 周等周期以及假期等因素的非线性趋势的加法模型 模型要求至少一年以上的周期性历史数据 prophet模型对于缺失值 趋势突