• Stars
    star
    157
  • Rank 237,015 (Top 5 %)
  • Language
    Python
  • License
    MIT License
  • Created over 3 years ago
  • Updated 9 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Anomaly Detection for time series data

tsod: Anomaly Detection for time series data.

Full test PyPI version Python version

univariate

Sensors often provide faulty or missing observations. These anomalies must be detected automatically and replaced with more feasible values before feeding the data to numerical simulation engines as boundary conditions or real time decision systems.

This package aims to provide examples and algorithms for detecting anomalies in time series data specifically tailored to DHI users and the water domain. It is simple to install and deploy operationally and is accessible to everyone (open-source).

Active learning web application

The web application is developed using Streamlit. All requirements needed to run this application can be found here.

Getting Started

Installation

tsod is a pure Python library and runs on Windows, Linux and Mac.

From PyPI:

pip install tsod

Or development version:

pip install https://github.com/DHI/tsod/archive/main.zip

Vision

  • A simple and consistent API for anomaly detection of timeseries
  • The computational speed will be good for typical timeseries data found in the water domain, to support realtime detection
  • It will have a suite of different algorithms ranging from simple rule-based to more advanced based on e.g. neural networks

Definitions

Note that we distinguish between two types of anomaly detection

  • Outlier detection (unsupervised anomaly detection) The training data may contain outliers, i.e. observations far from most other observations. Outlier detectors try to concentrate on the observations in the training data that similar and close together, and ignores observations further away.

  • Novelty detection (semi-supervised anomaly detection) The training data is considered "normal" and is not polluted by outliers. New test data observations can be categorized as an outlier and is in this context called a novelty.

Contribute to tsod

Open in Visual Studio Code

  • Follow PEP8 code style. This is automatically checked during Pull Requests.

  • If citing or re-using other code please make sure their license is also consistent with our policy.

More Repositories

1

terracotta

A light-weight, versatile XYZ tile server, built with Flask and Rasterio ๐ŸŒ
Python
673
star
2

mikeio

Read, write and manipulate dfs0, dfs1, dfs2, dfs3, dfsu and mesh files.
Python
136
star
3

modelskill

Compare results from MIKE and other simulations with measurements
Python
29
star
4

mikeio1d

Read res1d and xns11 files.
Python
24
star
5

DHI-MATLAB-Toolbox

DHI MATLAB Toolbox containing MATLAB scripts for working with DHI files
MATLAB
20
star
6

ifm

Documentation for FEFLOW IFM API (Python Interface)
Jupyter Notebook
17
star
7

datatalks

๐Ÿง‘โ€๐ŸซNotebooks and scripts associated with Data Talks ๐Ÿ“
HTML
11
star
8

Mike1D-SDK-examples

MIKE 1D SDK examples
C#
9
star
9

react-components

This is a share library of react components
TypeScript
9
star
10

MIKECore-Examples

MIKE Core Examples: dfs, pfs, projections.
Batchfile
8
star
11

netcdf-client

This program converts structured grid NetCDF and GRIB2 files with CF convention (http://cfconventions.org) to MIKE DFS files and vice versa.
C#
7
star
12

MIKE-OPERATIONS

Python
7
star
13

mikepluspy

MIKE+Py is the official python interface for MIKE+
Jupyter Notebook
7
star
14

python-package-development

Improving water modelling efficiency with Python package development
Jupyter Notebook
6
star
15

mikecore-python

MIKE Core in Python
Python
5
star
16

Intro_ML_course

Course material for "Introduction to Machine Learning for Water Professionals"
Jupyter Notebook
5
star
17

qgis-res1d-plugin

Python
5
star
18

Arsenal

Shared components & guides monorepo. See the page below for demos.
TypeScript
5
star
19

mikeio-examples

Examples of using MIKE IO
Jupyter Notebook
3
star
20

DHI.Mesh

Library supporting various operations on flexible meshes
C#
3
star
21

book-learn-mikeio-modelskill

Course material for: Python for marine modelers using MIKE IO and ModelSkill
Jupyter Notebook
3
star
22

fmdap

Pre- and post-processing for MIKE FM Data Assimilation
Python
3
star
23

DomainServicesCourse

Course materials for a DHI Domain Services course
C#
3
star
24

matplotlib-styles

Matplotlib Styles for DHI Office Report Template
Jupyter Notebook
2
star
25

jupyter-training-course

Files for the Jupyter Training Course on DHI Campus
Jupyter Notebook
2
star
26

watobs

WatObs - access water observation data
Jupyter Notebook
2
star
27

getting-started-with-mikeio

Course material for: Getting started with dfs files in Python using MIKE IO
Jupyter Notebook
2
star
28

webinars

Notebooks and scripts associated with DHI webinars
Jupyter Notebook
2
star
29

res1d-reader

Reads and resamples multiple Mike1D result files (.res1d)
C#
1
star
30

wgrib

WGRIB is a program to manipulate, inventory and decode GRIB files
C
1
star
31

DomainServicesSample

Sample Domain Services Web API project extended with a custom controller
HTML
1
star
32

jupyter-training

Jupyter Notebooks for training purposes
Jupyter Notebook
1
star
33

pfs2yaml

Convert DHI pfs files to Yaml
Jupyter Notebook
1
star
34

anomalydetection_app

Dash app to explore anomaly detection methods available from the anomalydetection package.
Python
1
star
35

MikeShe

Python code samples using the MIKE SHE API
Python
1
star
36

html-import-updater

๐Ÿ“ฆ CLI tool that updates html imports in your web components (or even Polymer elements).
JavaScript
1
star
37

DHI-React-App

This is DHI react template generator. Built to make creating react app more efficient and faster especially when you are starting new react app project for the first time.
JavaScript
1
star
38

.github

1
star
39

feflow-monitor

A node-red based webservice to monitor the progress of FEFLOW model runs on a website.
1
star
40

mikecloudio

A Python wrapper to access the MIKE Cloud Live REST API
Python
1
star
41

template-python-library

Template for Python library
Python
1
star