R 中的时间序列突破/变化/干扰检测:strucchange、changepoint、BreakoutDetection、bfast 等

2024-03-15

我希望这成为 R 中各种时间序列突破/变化/干扰检测方法的路标。我的问题是描述以下每个包的动机和方法差异。也就是说,什么时候使用一种方法比另一种方法更有意义、相似/差异等。

有问题的包:

  • 结构变化 http://cran.r-project.org/web/packages/strucchange/index.html(例子here http://rpubs.com/sinhrks/plot_ts)
  • 变化点 http://cran.r-project.org/web/packages/changepoint/index.html(例子here http://rpubs.com/sinhrks/plot_ts)
  • 突破检测 https://github.com/twitter/BreakoutDetection(链接包含简单示例)
  • qcc 的控制图 http://cran.r-project.org/web/packages/qcc/qcc.pdf(教程here http://blog.yhathq.com/posts/quality-control-in-r.html)
  • bfast http://cran.r-project.org/web/packages/bfast/index.html
  • 也许(?)在较小程度上:异常检测 https://github.com/twitter/AnomalyDetection and 离群值 http://cran.r-project.org/web/packages/mvoutlier/index.html

我希望得到有针对性的答案。也许每种方法都有一个段落。很容易将这些都放在一个时间序列中,但这可能会以滥用/违反假设为代价。有一些资源为 ML 监督/无监督技术提供指南。我(当然还有其他人)会欣赏有关时间序列分析这一领域的一些指南/指针。


两种截然不同的动机导致了时间序列分析:

  1. 工业质量控制 and 异常值检测,检测与稳定噪声的偏差。
  2. 对趋势的科学理解,其中对趋势及其决定因素的理解至关重要。

当然,两者在很大程度上都是同一枚硬币的两面,异常值检测对于趋势分析之前的时间序列清理非常重要。尽管如此,我将在以后尝试使用这种区别作为红线来解释 R 提供的用于研究时间序列的包的多样性。

In 质量控制,平均值和标准差的稳定性非常重要,如控制图是维护工业质量的最早统计工作之一的历史 http://en.wikipedia.org/wiki/Control_chart#History。在这方面,qcc http://cran.r-project.org/web/packages/qcc/index.html是一个参考实现最经典的质量控制图:Shewhart 质量控制图、cusum 和 EWMA 图 https://inst.eecs.berkeley.edu/~ee290h/fa05/Lectures/PDF/lecture%2014%20CUSUM%20and%20EWMA.pdf.

老了但仍然活跃姆武特利耶 http://cran.r-project.org/web/packages/mvoutlier/index.html以及最近的异常检测 https://github.com/twitter/AnomalyDetection专注于异常值检测。 mvoutlier 主要使用 Mahalanobis 距离,可以使用 Filzmoser、Maronna 和 Werner (2007) 的算法处理二维数据集(栅格)甚至多维数据集。异常检测使用时间序列分解 http://en.wikipedia.org/wiki/Decomposition_of_time_series识别局部异常(异常值)和全局异常(季节性模式无法解释的变化)。 和突破检测 https://github.com/twitter/BreakoutDetection

作为异常检测,突破检测 https://github.com/twitter/BreakoutDetection已于 2014 年被 Twitter 开源。突破检测 https://github.com/twitter/BreakoutDetection, Twitter 于 2014 年开源 http://www.r-bloggers.com/evaluating-breakoutdetection/, 打算检测突破它是使用非参数统计的时间序列,即异常组。突破的检测与趋势的检测和模式的理解非常接近。在类似的光学器件中,brca http://cran.r-project.org/web/packages/bcpa/index.html软件包侧重于分析不规则采样的时间序列,特别是识别动物运动的行为变化 http://wiki.cbr.washington.edu/qerm/index.php/Behavioral_Change_Point_Analysis.

绝对转向决心趋势的变化 变化点 http://cran.r-project.org/web/packages/changepoint/changepoint.pdf实现多种(简单)频率论和非参数方法来检测时间序列趋势中的单个或多个中断。结构变化 http://cran.r-project.org/web/packages/strucchange/index.html允许使用回归模型来拟合、绘制和测试趋势变化。最后,bfast http://cran.r-project.org/web/packages/bfast/index.html基于 structchange 来分析栅格(例如卫星图像)时间序列并处理丢失的数据。

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

R 中的时间序列突破/变化/干扰检测:strucchange、changepoint、BreakoutDetection、bfast 等 的相关文章

  • 如何使用 R 或 PowerShell 从文本文件中提取数据?

    我有一个包含如下数据的文本文件 This is just text Username SOMETHI C Text Account DFAG Finish time 1 JAN 2011 00 31 58 91 Process ID 202
  • 获取所有参数作为列表

    R 是否提供对象 函数 方法 关键字来获取所有函数参数 使用一个例子 function a b default 会提供a and b也 在函数环境内 有没有类似的说法list 这还包括a and b在结果中 或者换一种方式 简写list a
  • R 中的聚类分析:确定最佳聚类数

    如何选择最佳的聚类数量来进行 k 均值分析 绘制以下数据的子集后 多少个簇比较合适 如何进行聚类树突分析 n 1000 kk 10 x1 runif kk y1 runif kk z1 runif kk x4 sample x1 lengt
  • 使用 ggplot 未完全填充等值线图

    我正在尝试使用以下方法绘制我的第一个填充等高线图ggplot 根据我的数据 我期待类似的结果 但我的结果是 a lt c 1 1 1 1 1 3 1 2 2 2 2 2 2 5 2 1 3 3 3 3 1 3 2 b lt c rep c
  • R 和 Python 中 LU 分解结果不一致

    我有以下矩阵A in R 1 2 3 4 1 1 1527778 0 4444444 0 375 0 3333333 2 0 5555556 1 4888889 0 600 0 3333333 3 0 6250000 0 4000000 1
  • R 中 x 轴曲线的阴影面积

    所以我有一个位于 x 轴下方和上方的图表 并且想要对线和 0 之间的区域进行着色 在这里 我尝试使用多边形函数 但它只给出曲线下的面积 plot year difference1 type l polygon year difference
  • 如何在environment.yml中安装CRAN包

    我正在使用 miniconda 来管理数据科学包的安装 这是我现在已经建立的工作流程 所以我希望它也能在这种情况下工作 我也认为它可以工作 因为它应该在这样的情况下有所帮助 比纯 python 需要更多的依赖项 我想安装pythonCDT工
  • R:install.packages 中出现错误:无法打开连接

    我试图安装 RINDSEL 包 但无法安装它 并且不断收到以下错误 install packages 中出错 无法打开连接 我从以下位置下载了该软件包 rindsel 1 0 2 zip 综合养殖平台 http old ibpdev net
  • 如何拆分 data.frame -> 将合并应用于子集 -> 合并到 data.frame 中

    我真的不知道如何在不使用 for 循环的情况下实现这一目标 x lt c a b c d gt x 1 a b c d data lt data frame x c a b a b c a a b c d name c one one tw
  • 无法使用 cairo 安装 R

    我正在从源代码安装 R cd R 3 2 2 configure prefix pwd with cairo yes with readline no with libpng yes with x no 我已经从源代码安装了 cairo v
  • 替换向量中非 %in% 向量的值

    简短的问题 我可以像这样替换某些变量值 values lt c a b a b c a b df lt data frame values 将 df values 的所有值替换为 x 其中值是neither a 或 b 输出应该是 c a
  • 用于带有嵌套子图的图的 r 包? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个用于图形 网络的 r 包 它可以处理嵌套子图 Graphviz 做到了这一点 但只提供可
  • mclapply 调用应该嵌套吗?

    正在筑巢parallel mclapply是个好主意吗 require parallel ans lt mclapply 1 3 function x mclapply 1 3 function y y x unlist ans Outpu
  • 选择一个单元格内的最小值或最大值(分隔字符串)

    我有一个数据框 其中每个样本的列可以有多个值 例如 Gene Pvalue1 Pvalue2 Pvalue3 Beta Ace 0 0381 0 00357 0 01755 0 001385 0 0037 NA 0 039 0 03 1 1
  • Rstudio 命令历史记录

    这些天我经常使用 Rstudio 但最近注意到我的命令不再存储在历史记录中 我不知道这是从什么时候开始的 但可能是在安装最新版本时发生的 关于问题可能是什么的任何想法吗 Thanks 这是我们在 v0 93 73 中引入并在 v0 93 7
  • 无重叠的抖动点

    My data a lt sample 1 5 100 replace TRUE b lt sample 1 5 100 replace TRUE c lt sample 1 10 100 replace TRUE d lt sample
  • 字边界正则表达式问题

    我在使用单词边界时遇到问题 b在我的正则表达式中 我正在使用 R 但当我尝试时问题也存在http regexr com http regexr com 我使用的模式是 bs l b 虽然我预计下面的第 1 行和第 3 行能够匹配此模式 但只
  • Python Pandas DateOffset 使用另一列中的值

    我以为这会很容易 但下面的内容并不适合我想要的 只是尝试通过使用另一列中的值将天数添加到预先存在的日期时间列来计算新的日期列 我下面的 偏移 列只有 1 位数字 df new date df orig date apply lambda x
  • ggplot堆叠条 - 隐藏标签但保留标签位置

    我在 ggplot 中有一个堆积条形图 其中 geom text 标签位于每个条形的中心 我想隐藏小条上的标签 以便图表看起来不会过于拥挤 我可以使用下面的代码来完成此操作 但它会弄乱标签的位置 正如您在下面的链接图片中看到的那样 它们不再
  • 如何融合颜色和形状?

    当我有一个超过 6 个值的变量时 我的麻烦就开始了 因为这是 ggplot2 中 scale shape 函数的当前最大值 由于这个问题 我尝试使用另一个变量来解决这个问题 我只是将原始变量的长度包裹起来 这是我的示例代码 dataf lt

随机推荐

  • 如何在 WordPress 中动态创建 pdf? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我使用 Contact Form 7 让用户输入数据 然后根据他们的数据输入 我需要在输出整个 pdf 之前向 pdf 添加不同的文本
  • 无延迟调用setTimeout

    在 JavaScript 库中经常看到这样的代码 setTimeout function 0 我想知道为什么要使用这样的包装代码 非常简化 浏览器是单线程的 并且这个单线程 UI 线程 在渲染引擎和 js 引擎之间共享 如果您想做的事情需要
  • 如何更改 Laravel 中请求参数的值

    我需要像这样更改请求参数的值 request gt name My Value 我使用这段代码但不起作用 request gt offsetSet img img Try to requestData request gt all requ
  • 如何在 gRPC python 中定义全局错误处理程序

    我试图捕获任何服务程序中引发的任何异常 这样我就可以确保只传播已知的异常 而不传播意外的异常 例如 ValueError TypeError 等 我希望能够捕获任何引发的错误 并格式化它们或将它们转换为其他错误 以更好地控制公开的信息 我不
  • 使用 Spring RestTemplate 将查询参数添加到每个 REST 请求

    有没有办法向执行的每个 HTTP 请求添加查询参数RestTemplate在春天 Atlassian API 使用查询参数os authType指定身份验证方法 所以我想附加 os authtype basic对每个请求 而不在我的代码中指
  • .NET Core 3.1 CreateHostBuilder无法解析JSON文件

    我在尝试运行 ASP Net Core 3 1 项目时遇到错误 错误位于CreateHostBuilder within Program cs public class Program public static void Main str
  • 有没有办法在成员名称循环中对 N C++ 类成员应用操作(可能通过预处理器)?

    问题 我有一个 C 类 其中有大量 gt 100 成员 其行为几乎相同 同类型 在函数中 每个成员都有与其他成员完全相同的代码 例如从构造函数中的映射进行赋值 其中映射键与成员键相同 这种行为的相同性在许多函数 gt 20 中重复出现 当然
  • Android - 手风琴小部件

    我正在寻找创建一个的最佳方法手风琴式小部件 如本页所示 http labs adobe com technologies spry samples accordion AccordionSample html 有没有办法使用标准 Andro
  • Omniauth“与”STI 和设计

    我想通了 没有结果 我有一个名为 User 的模型以及带有 STI 粉丝和艺术家的模型 如下所示 class User lt ActiveRecord Base devise database authenticatable registe
  • AngularJS - 为什么需要 $apply 来正确解决 $q 承诺?

    我正在尝试在我的角度应用程序中编写一个小型服务 这将使我能够选择全局 Javascript 对象中指定的配置参数 我不想尝试访问全局配置对象 除非文档已准备好 因为我无法保证脚本元素在 HTML 中插入的顺序 但是 我不明白为什么我需要打电
  • css 内联块与浮动

    我正在做一些测试float and inline block我注意到它们之间存在差异 正如你可以看到的这个例子 http codepen io anon pen kwrtD 如果我使用display inline blockdiv 之间有一
  • 如何检测OutofMemoryError的原因?

    我抱怨我的服务器应用程序在高负载时崩溃 这是一个运行在以下位置的网络应用程序Tomcat 5 我看到线程转储 并且发现存在 OutOfMemory 错误 1TISIGINFO 转储事件 systhrow 00040000 详细信息 java
  • java.lang.ClassCastException:DTOObject 无法转换为 DTOObject

    我在 Spring Boot 1 4 0M3 上运行的应用程序中遇到一个奇怪的问题 该应用程序使用 Spring 缓存实现 其中提供程序是 Redis 我收到 classCastException 无法转换相同的对象 我使用 Mongodb
  • C 中用户定义的数组大小

    我正在阅读 C 插图 第一个练习题问 MATMUL 程序将固定大小的矩阵相乘 使程序处理任何指定的尺寸 下面是我迄今为止提出的代码 但是我读到所有属性都需要在主函数之前声明 那么如何获得自定义大小的数组而不在主函数中声明它们呢 define
  • NSPopover - 焦点丢失时隐藏? (在弹出窗口外单击)

    我正在使用doubleClickAction of a NSTableView显示一个NSPopover 像这样的东西 NSInteger selectedRow dataTableView clickedRow NSInteger sel
  • 立即调用函数表达式:括号放在哪里?

    我看过IIFE的写法 function console log do cool stuff 也 function console log do more cool stuff 它们在我使用过的任何环境中似乎都一样工作 尽管有时我被告知一种方
  • Tomcat 6 - 请求的资源...不可用

    我正在尝试开始使用 Java 和 Stripes Framework 进行开发 我的 web xml 文件中有以下内容
  • Dropbox sdk 存储库 maven

    即使这听起来像是一个愚蠢的问题 我也无法找到 dropbox sdk 所在的存储库 所以在我的 pom xml 中我声明了这个依赖项
  • 如何在多个 Pod 上挂载相同的持久卷?

    我有一个三节点 GCE 集群和一个具有三个副本的单 Pod GKE 部署 我像这样创建了 PV 和 PVC Create a persistent volume for web content apiVersion v1 kind Pers
  • R 中的时间序列突破/变化/干扰检测:strucchange、changepoint、BreakoutDetection、bfast 等

    我希望这成为 R 中各种时间序列突破 变化 干扰检测方法的路标 我的问题是描述以下每个包的动机和方法差异 也就是说 什么时候使用一种方法比另一种方法更有意义 相似 差异等 有问题的包 结构变化 http cran r project org