The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
Harbinger
Time-series event analysis is rarely a matter of calling one isolated function. In practice, the analyst needs to understand the signal, choose a suitable family of methods, inspect the result visually, and evaluate whether the detected events actually correspond to the phenomenon of interest. Harbinger was designed to support this full learning and experimentation path with a unified interface for anomaly detection, change-point detection, motif discovery, transformations, plotting, and evaluation.
The package is not only a catalog of methods. It is also a framework for organizing event-oriented studies in a more consistent way, from first examples to reusable experiment lines.
The documentation was reorganized to support two complementary entry points:
If you are new to harbinger, start with the tutorials.
If you already know the basic workflow, the thematic collections remain
available and are grouped by subject in a more didactic order.
The examples were revised to be more useful for learning:
README files group examples by subject rather
than only by function nameThe snippet below uses the default harbinger() pipeline
on a bundled dataset. It is intentionally short so that a new reader can
see the minimum workflow before moving to the more didactic notebooks in
/examples/.
library(harbinger)
# Load an example dataset with labeled anomalies
data(examples_anomalies)
# Create the default detector and run it on the series
model <- harbinger()
detection <- detect(model, examples_anomalies$simple$serie)
# Inspect only the detected events
library(dplyr)
#> Warning: package 'dplyr' was built under R version 4.5.3
#>
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#>
#> filter, lag
#> The following objects are masked from 'package:base':
#>
#> intersect, setdiff, setequal, union
print(detection |> dplyr::filter(event == TRUE))
#> [1] idx event type
#> <0 rows> (or 0-length row.names)If you are new to the package, this sequence works well:
The latest version of Harbinger at CRAN is available at: https://CRAN.R-project.org/package=harbinger
You can install the stable version from CRAN with:
install.packages("harbinger")You can install the development version from GitHub with:
library(devtools)
devtools::install_github("cefet-rj-dal/harbinger", force = TRUE, upgrade = "never")https://github.com/cefet-rj-dal/harbinger/issues
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.