Skip to main content

Multi-unit Van Rossum spike train metric

Project description

Overview

build status

A Python package for the fast calculation of Multi-unit Van Rossum neural spike train metrics, with the kernel-based algorithm described in Houghton and Kreuz, On the efficient calculation of Van Rossum distances (Network: Computation in Neural Systems, 2012, 23, 48-58). This package started out as a Python wrapping of the original C++ implementation given by the authors of the paper, and evolved from there with bugfixes and improvements.

Documentation

Full documentation is hosted at http://pymuvr.readthedocs.org/.

Requirements

  • Python 2.7 or 3.x.
  • NumPy>=1.7.
  • C++ development tools and Standard Library (package build-essential on Debian).
  • Python development tools (package python-dev on Debian).

Installation

To install the latest release, run:

pip install pymuvr

If you prefer installing from git, use:

git clone https://github.com/epiasini/pymuvr.git
cd pymuvr
python setup.py install

Usage

The module exposes two functions:

pymuvr.distance_matrix(observations1, observations2, cos, tau)
pymuvr.square_distance_matrix(observations, cos, tau)

distance_matrix calculates the ‘bipartite’ (rectangular) dissimilarity matrix between the multi-unit trains in observations1 and those in observations2.

square_distance_matrix calculates the ‘all-to-all’ dissimilarity matrix between each pair of trains in parallel_trains. It’s an optimised form of distance_matrix(observations, observations, cos, tau).

They both return their results as a 2D numpy array.

The observations arguments must be thrice-nested lists of spiketimes, in such a way that observations[i][j][k] represents the time of the kth spike of the jth cell of the ith observation. cos and tau are the usual parameters for the multiunit Van Rossum metric.

See examples/benchmark_versus_spykeutils.py for an example of usage comparing the performance of pymuvr with the pure Python implementation of the multiunit Van Rossum distance in spykeutils.

License

This package is licensed under version 3 of the GPL or any later version. See COPYING for details.

Getting the source

Source code for pymuvr is hosted at https://github.com/epiasini/pymuvr.

Project details


Release history Release notifications

History Node

1.3.3

History Node

1.3.2

History Node

1.3.0

This version
History Node

1.2.0

History Node

1.1.0

History Node

1.0.1

History Node

1.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
pymuvr-1.2.0.tar.gz (54.1 kB) Copy SHA256 hash SHA256 Source None Jun 2, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page