Skip to main content

Package for estimation and evaluation of neural models from patch clamp neural recordings.

Project description

fit_neuron is an easy to use python package for the fast estimation of generalized integrate and fire neural models from patch clamp electrophysiological recordings. The optimization routines implements a fitting procedure described in [RB2005] and [MS2011]. The package includes an easy to use interface similar to scikit-learn for fitting models to data and then making predictions with the fitted models. The routines used can estimate the models described in [RB2005], [MN2009], and [MS2011]. As described in depth in the documentation, the subthreshold parameters are estimated using linear regression and the threshold parameters are estimated using maximum likelihood. The fitting routine is built for speed: it estimates neuron parameters for 10 seconds of data in about 50 seconds on a quad core Asus laptop. fit_neuron also contains efficient implementations of the following spike distance measures: Victor-Purpura [DA2003], van Rossum [VR2001], Schreiber [SS2003], and Gamma [RJ2008] which can be used to evaluate the accuracy of estimated models, as well as provide measures of synchrony between spike trains.





  • Nicolas D. Jimenez


  1. Numpy

The standard python module for matrix and vector computations:

  1. Scipy

The standard python module for statistical analysis:

  1. Matplotlib

The standard python module for data visualization:


The fit_neuron package can be installed as follows:

sudo pip install fit_neuron

The data for the fit_neuron package is then installed as follows:

sudo python -m


Running this script for the first time will download a 300 MB zip file containing test recordings which is then unzipped to over 1 GB of text files in the installation directory of the fit_neuron package. This may take up to 20 minutes depending on your bandwidth. After the files are downloaded, the test data will be easily accessible via the package.


There are two testing scripts that may be used. Both scripts are described in the documentation (

The first script is far simpler and easier to understand but is less configurable:

python -m fit_neuron.tests.test_model

The more complicated and configurable testing script for fit_neuron can be run as follows:

python -m fit_neuron.tests.test

This will create a directory called test_output_figures in the current directory.

Feel free to contact me at nicodjimenez [at] if you have any questions / comments.


[RB2005](1, 2) Brette, Romain, and Wulfram Gerstner. “Adaptive exponential integrate-and-fire model as an effective description of neuronal activity.” Journal of neurophysiology 94.5 (2005): 3637-3642.
[MN2009]Mihalas, Stefan, and Ernst Niebur. “A generalized linear integrate-and-fire neural model produces diverse spiking behaviors.” Neural computation 21.3 (2009): 704-718.
[MS2011](1, 2) Mensi, Skander, et al. “Parameter extraction and classification of three cortical neuron types reveals two distinct adaptation mechanisms.” Journal of neurophysiology 107.6 (2012): 1756-1775.
[RJ2008]Jolivet, Renaud, et al. “A benchmark test for a quantitative assessment of simple neuron models.” Journal of neuroscience methods 169.2 (2008): 417-424.
[SS2003]Schreiber, S., et al. “A new correlation-based measure of spike timing reliability.” Neurocomputing 52 (2003): 925-931.
[VR2001]van Rossum, Mark CW. “A novel spike distance.” Neural Computation 13.4 (2001): 751-763.
[DA2003]Aronov, Dmitriy. “Fast algorithm for the metric-space analysis of simultaneous responses of multiple single neurons.” Journal of Neuroscience Methods 124.2 (2003): 175-179.

Project details

Download files

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

Files for fit_neuron, version 0.0.6
Filename, size File type Python version Upload date Hashes
Filename, size fit_neuron-0.0.6.tar.gz (32.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

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