carldata / timeseries

Time Series library for Scala

GitHub

Welcome to the Time Series library

Build status Maven Central

Library for processing Time Series.

Quick start

Add the following dependency to the build.sbt

libraryDependencies += "io.github.carldata" %% "timeseries" % "0.6.8"

Running benchmarks

sbt -mem 4000 run

Features

  • Basic functionality
    • Slicing series
    • Map, fold and filter
    • Integration
    • Differentiation
    • groupBy
    • Rolling window
    • Resampling
    • join and merge
  • Calculate statistics
    • min, max
    • mean, variance and standard deviation
    • covariance and correlation
    • normalization
  • IO
    • Read data to/from CSV string
  • Generators
    • Constant series
    • Random noise
    • Random Walk
    • periodic pattern
  • Metrics
    • MSE between 2 series
    • MAE between 2 series
  • ARIMA
    • Check is series is stationary
    • AR(p) - Autoregressive
    • I(d) - Integrate
    • MA(q) - Moving average
  • Advanced functionality
    • Finding sessions (periods of activity)

Join in!

We are happy to receive bug reports, fixes, documentation enhancements, and other improvements.

Please report bugs via the github issue tracker.

Redistributing

timeseries source code is distributed under the Apache-2.0 license.

Contributions

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.