pybursts

A Python port of the 'burst detection' algorithm by Kleinberg, originally implemented in R


Keywords
burst, detection, data, mining, text
License
Other
Install
pip install pybursts==0.1.1

Documentation

Pybursts

Changelog

0.1.1

Description

This is a Python port of the R implementation of Kleinberg's algorithm (described in 'Bursty and Hierarchical Structure in Streams'). The algorithm models activity bursts in a time series as an infinite hidden Markov model.

Installation

pip install pybursts

or

easy_install pybursts

Dependencies

Usage

import pybursts

offsets = [4, 17, 23, 27, 33, 35, 37, 76, 77, 82, 84, 88, 90, 92]
print pybursts.kleinberg(offsets, s=2, gamma=0.1)

Input

  • offsets: a list of time offsets (numeric)
  • s: the base of the exponential distribution that is used for modeling the event frequencies
  • gamma: coefficient for the transition costs between states

Output

An array of intervals in which a burst of activity was detected. The first column denotes the level within the hierarchy; the second column the start value of the interval; the third column the end value. The first row is always the top-level activity (the complete interval from start to finish).

References