Skip to content

tskit is a Python package that provides tools for the analysis of time series

License

Notifications You must be signed in to change notification settings

alumik/time-series-toolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tskit - Time Series Toolkit

version-0.0.10 python->=3.11 license-MIT

tskit is a collection of tools for time series data analysis.

Only univariate time series are supported at the moment.

A Quick Example

import pandas as pd

import tskit

ts = (
    tskit.TimeSeries.from_generators(
        ['sine', 'square', 'random_walk'],
        generator_args=[{}, {'period': 1440}, {}],
        weights=[1.0, 0.5, 0.8],
        standardize_idx=[2],
        start=pd.Timestamp('2022-09-27 00:00:00'),
        length=1440,
        freq='1min',
    )
    .smooth('ewma', alpha=0.5)
    .to_shapelet(alpha=5)
    .tile(10)
    .add_noise('gaussian', amplitude=0.2)
)
ts.save('out/uts.csv')

tskit.plot(ts)

Tools

  • Time series generation
    • Planned for v0.1.0 Infer the frequency of time series
    • Planned for v0.1.0 From configs
    • From generators
      • Random walk
      • Sine
      • Cosine
      • Linear
      • Gaussian
      • Uniform
      • Step
      • Exponential
      • Poisson
      • LogNormal
      • Gamma
      • Square
      • Sawtooth
      • Triangle
      • Impulse
      • Perlin
    • Planned for v0.1.0 From Pandas DataFrames
    • Planned for v0.1.0 From CSV files
  • Add noise to time series
    • Gaussian noise
    • Uniform noise
    • 1-D Perlin noise
  • Plot time series
    • Plot univariate time series
  • Time series smoothing
    • Moving average (MA)
    • Exponential weighted moving average (EWMA)
    • Median filter
    • Savitzky-Golay filter
  • Time series transformation
    • Merge multiple time series
    • Tile time series
    • Shapelet transform
    • Standardize
    • Seasonal-trend decomposition with LOESS (STL)
    • Planned for v0.1.0 Split time series into segments
    • Planned for v0.1.0 Interpolate missing values
  • Planned for v0.1.0 Anomaly/outlier injection
    • Point-wise outlier
      • Contextual outlier
      • Global outlier
    • Pattern-wise outlier
      • Shapelet outlier
      • Trend outlier
      • Seasonal outlier
  • Planned for v0.2.0 Support for multivariate time series

About

tskit is a Python package that provides tools for the analysis of time series

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published