首页 > 其他分享 >prophet翻译(八)--- 异常值

prophet翻译(八)--- 异常值

时间:2023-05-25 16:47:52浏览次数:35  
标签:翻译 01 示例 df prophet --- future Prophet 异常

异常值

异常值可以影响Prophet的预测结果,主要有两种方式。下面的示例中,我们使用之前提到的R页面的日志化维基百科访问量数据进行预测,但添加了一段错误的数据:

# Python
df = pd.read_csv('https://raw.githubusercontent.com/facebook/prophet/main/examples/example_wp_log_R_outliers1.csv')
m = Prophet()
m.fit(df)
future = m.make_future_dataframe(periods=1096)
forecast = m.predict(future)
fig = m.plot(forecast)

image

在上述示例中,趋势的预测看起来是合理的,但不确定性区间似乎过于宽广。Prophet能够处理历史中的异常值,但是只能通过拟合趋势变化来处理它们。因此,不确定性模型预期未来的趋势变化具有类似的幅度。

处理异常值的最佳方法是将其移除- Prophet对缺失数据没有问题。如果在历史数据中将异常值的值设置为NA(缺失值),但保留未来的日期,那么Prophet将为异常值给出预测。

# Python
df.loc[(df['ds'] > '2010-01-01') & (df['ds'] < '2011-01-01'), 'y'] = None
model = Prophet().fit(df)
fig = model.plot(model.predict(future))

image
在上面的示例中,异常值扰乱了不确定性估计,但并没有影响到主要的预测值yhat。然而,并不是所有情况下都是如此,就像在下面这个示例中添加了异常值的情况一样:

# Python
df = pd.read_csv('https://raw.githubusercontent.com/facebook/prophet/main/examples/example_wp_log_R_outliers2.csv')
m = Prophet()
m.fit(df)
future = m.make_future_dataframe(periods=1096)
forecast = m.predict(future)
fig = m.plot(forecast)

image
在这个示例中,2015年6月的一组极端异常值扰乱了季节性的估计,因此它们的影响会一直持续到未来。同样,正确的方法是将它们移除:

# Python
df.loc[(df['ds'] > '2015-06-01') & (df['ds'] < '2015-06-30'), 'y'] = None
m = Prophet().fit(df)
fig = m.plot(m.predict(future))

image

标签:翻译,01,示例,df,prophet,---,future,Prophet,异常
From: https://www.cnblogs.com/wt11/p/17431762.html

相关文章

  • 500代码行代码手写docker-设置网络命名空间
    (4)500代码行代码手写docker-设置网络命名空间本系列教程主要是为了弄清楚容器化的原理,纸上得来终觉浅,绝知此事要躬行,理论始终不及动手实践来的深刻,所以这个系列会用go语言实现一个类似docker的容器化功能,最终能够容器化的运行一个进程。本章的源码已经上传到github,地址如下:......
  • ASEMI代理长电MCR100-6可控硅的性能与应用分析
    编辑-Z本文主要介绍了新型MCR100-6晶闸管的性能与应用。首先,从晶闸管的基本原理和结构出发,分析了MCR100-6晶闸管的性能特点;其次,探讨了MCR100-6晶闸管在各种电子电路中的应用;最后,对MCR100-6晶闸管的发展前景进行了展望。 1、MCR100-6晶闸管的基本原理和结构MCR100-6晶闸管是一......
  • MYSQL性能优化-CPU/内存/磁盘
    CPU配置MYSQL的IO线程与CPU核数一致。通过以下命令查看当前配置的配置,默认4#showvariableslike‘%_io_threads’;只能通过修改配置文件来修改以上的配置innodb_read_io_threads=16innodb_read_write_threads=16配置后需要重启MYSQL服务内存超过4G内存则需要CPU支持64位......
  • LightDB-A 支持oracle执行计划下推
    LightDB-A支持创建外部表,外部数据源可以是oracle,postgresql等.在LightDB-A创建oracleserver和用户映射:CREATESERVERoradbFOREIGNDATAWRAPPERoracle_fdwOPTIONS(dbserver'//x.x.x.x:1521/test');GRANTUSAGEONFOREIGNSERVERoradbTOfj;CREATEUSERMAPPING......
  • 流水调度问题-动态规划-Johnson法则-两种方法
    问题描述:n个作业{0,1,2,…,n}在2台机器上M1和M2组成的流水线上完成加工。每个作业加工的顺序都是先在M1上加工,后在M2上加工。在两台机器上加工的时间分别为ai和bi。 确定这n个作业的加工顺序,使得从第一台作业开始加工,到最后一个作业完成加工所需要的时间最少。 递归关......
  • 在本地运行spark程序,出现Scala module 2.13.4 requires Jackson Databind version >=
    这是jackson多版本题,我们需要屏蔽所有hadoop组件中的Jackson,在pom.xml文件里修改:添加<exclusions><exclusion><groupId>com.fasterxml.jackson.module</groupId><artifactId>*</artifactId></exclusion><exclusion>......
  • F-02会计凭证和冲销
    *&---------------------------------------------------------------------**&ReportZPOST_DOCUMENT*&---------------------------------------------------------------------**&*&-----------------------------------------------------------......
  • The MySQL server is running with the --skip-grant-tables option so it cannot exe
     TheMySQLserverisrunningwiththe--skip-grant-tablesoptionsoitcannotexecutethisstatement 默认情况下,启动MySQL数据库实例期间,会读取所有的权限表条目到内存中,后续被缓存到内存中的权限条目作为依据即刻对后续的控制访问生效(传送门)。使用"skip-grant-tab......
  • 【Widnows】Hyper-V随机端口绑定导致冲突解决方案
    ✨WindowsTCP动态端口范围在Windows操作系统中,TCP动态端口范围是指用于临时分配给应用程序的端口号范围。当应用程序需要与其他计算机建立TCP连接时,操作系统会自动分配一个未使用的动态端口号给该应用程序使用。在Windows中,默认的TCP动态端口范围是从49152到65535......
  • grep -A -B -C使用介绍
    grep-A显示匹配指定内容及之后的n行grep-B 显示匹配指定内容及之前的n行grep-C 显示匹配指定内容及其前后各n行 grep-A5nametest.txt搜索匹配test.txt文件中与”name”字符串匹配的行,并显示其后的5行......