Skip to main content

Detecting cumulative changes in data.

Project description

canomaly

Searching for cumulative anomalies.

Open Source Love Documentation Status PyPI version PyPI - Downloads License Code style: Black

Project Description

This package detects specific types of anomalies with an emphasis in looking for cumulative changes.

Installation

This package can be installed through PyPi using

pip install canomaly

or

pip3 install canomaly

Example Usage

>>> import pandas as pd
>>> from canomaly.searchtools import cumrexpy
>>> # Get some data
>>> data = {
            'date': [
                '2018-11-20',
                '2018-11-21',
                '2018-11-22',
                '2018-11-22',
                '2018-11-23',
                '2018-11-24'],
            'email': [
                'john.doe@example.com',
                'jane.smith@example.com',
                'bob-johnson_123@example.com',
                'sarah@mydomain.co.uk',
                'frank@mydomain.com',
                'jessica_lee@mydomain.com'
                    ]
            }
>>> df = pd.DataFrame(data)
>>> df['date'] = pd.to_datetime(df['date'])
>>> # Extract regular expressions
>>> cumrexpy(df, 'email', 'date')
date
2018-11-20                           [^john\.doe@example\.com$]
2018-11-21                [^[a-z]{4}\.[a-z]{3,5}@example\.com$]
2018-11-22    [^[a-z]{4,5}[.@][a-z]+[.@][a-z]+\.[a-z]{2,3}$,...
2018-11-23    [^frank@mydomain\.com$, ^[a-z]{4,5}[.@][a-z]+[...
2018-11-24    [^frank@mydomain\.com$, ^[a-z]+[.@_][a-z]+[.@]...
Name: email_grouped, dtype: object

We can look at the results in markdown for clarity.

date email_grouped
2018-11-20 00:00:00 ['^john\.doe@example\.com$']
2018-11-21 00:00:00 ['^[a-z]{4}\.[a-z]{3,5}@example\.com$']
2018-11-22 00:00:00 ['^[a-z]{4,5}[.@][a-z]+[.@][a-z]+\.[a-z]{2,3}$', '^bob\-johnson_123@example\.com$']
2018-11-23 00:00:00 ['^frank@mydomain\.com$', '^[a-z]{4,5}[.@][a-z]+[.@][a-z]+\.[a-z]{2,3}$', '^bob\-johnson_123@example\.com$']
2018-11-24 00:00:00 ['^frank@mydomain\.com$', '^[a-z]+[.@_][a-z]+[.@][a-z]+\.[a-z]{2,3}$', '^bob\-johnson_123@example\.com$']

Build Documentation Locally

cd /path/to/canomaly/docs
make html

Star History Chart

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

canomaly-0.0.5.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

canomaly-0.0.5-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file canomaly-0.0.5.tar.gz.

File metadata

  • Download URL: canomaly-0.0.5.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for canomaly-0.0.5.tar.gz
Algorithm Hash digest
SHA256 c8f351804bac05517db16ecdea6096df46b0b0953d042e884a8823a5d0bb8fac
MD5 a8a94f729b6b8fd9417146ac83d6c36f
BLAKE2b-256 819aaf0e677cd96f018fbd7fa36a465f12a4e9fc7c4e2a647155a958063a33d0

See more details on using hashes here.

File details

Details for the file canomaly-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: canomaly-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for canomaly-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 b7e8e051e7eeb32cff612ad117265bb7c5470d360bf1d2e92eb4245c3b6d729a
MD5 ca041d79e5a833606db1b306fa35dd52
BLAKE2b-256 06f940ba3f14fb9b6bf9ca237761d1f69b6a0e702461a4aca4d35ed3c21b8e74

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page