4. Changelog

A list of new features, improvements, and bug-fixes in each release.

4.1. v0.6 (Active)

4.1.1. New features

  • Adds the ability to extend temporal filters to be acausal (past the time of the spike)
  • Adds an RBF class for estimating a nonlinearity using tiled radial basis functions.

4.1.2. API changes

  • Removes outdated stimulustools.rolling_window method.
  • In fixing a bug in linear_response, then method now returns an array of the same shape as the stimulus input, rather than one shorter by the length of the filter whose response is computed.

4.1.3. Bug fixes

  • Fixes a bug in the Sigmoid nonlinearity due do shuffled dictionary keys
  • Fixes bug in linear_response, which was supposed to take a filter, but actually took a reverse-correlation.
  • Fixes incorrect documentation for stimulustools.slicestim.

4.2. v0.5 (17 Nov 2016)

4.2.1. New features

  • Better handling of low-rank STA component signs in filtertools.lowranksta.
  • Functionality for embedding STA animations into HTML, via visualizations.anim_to_html().
  • New classes for estimating nonlinearities: Binterp, Sigmoid and GaussianProcess. These follow the scikit-learn interface, meaning they have fit() and predict() methods, which return self.

4.2.2. API changes

  • Renamed filtertools.getsta -> filtertools.sta
  • Renamed filtertools.getste -> filtertools.ste
  • Renamed filtertools.getstc -> filtertools.stc
  • Renamed visualizations.rasterandpsth -> visualizations.raster_and_psth
  • Renamed visualizations.plotcells -> visualizations.plot_cells
  • Renamed visualizations.plotsta -> visualizations.plot_sta
  • Renamed visualizations.playrates -> visualizations.play_rates
  • Renamed visualizations.playsta -> visualizations.play_sta
  • spiketools.binspikes and spiketools.estfr no longer return the time axis. Only the binned spikes and firing rate are returned, respectively.
  • Removed containers module.
  • filtertools.rolling_window has been moved to the stimulustools module, and is renamed slicestim. rolling_window is an alias for slicestim, for the time being, which raises a warning about future deprecation.
  • Renamed stimulustools.stimcov -> stimulustools.cov.
  • Renamed stimulustools.upsample_stim -> stimulustools.upsample.
  • Renamed stimulustools.downsample_stim -> stimulustools.downsample.

4.3. v0.4 (December 11 2015)

4.3.1. New features

  • Adds a containers module that contains two classes, and Experiment and a Filter class, for managing stimuli and spikes (Experiment) and spike-triggered averages (Filter).
  • New and improved ellipse and contour fitting code (filtertools.rfsize, filtertools.get_ellipse, visualizations.ellipse)
  • New function filtertools.resample which is a thin wrapper around scipy.signal.resample

4.3.2. API changes

  • Flipped the expected dimensions of stimuli and filters to have the temporal dimension first. E.g. functions now expect (time, space, space) or (time, space) instead of (space, space, time) or (space, time).
  • Changes the default value of the argument in rolling_window to time_axis=0, to be consistent with the rest of pyret (after the flipped dimensions switch)
  • Removes the prinangles function (does not really belong in the filtertools module, or even in pyret at all)
  • Updated pyret.plotsta function
  • Reworked filtertools.getste to be a generator, and modified getsta and getstc to consume that generator.

4.4. v0.3 (June 25 2015)

4.4.1. API changes

  • Changed the filtertools module’s getste, getsta, and getstc to use generators. The getste function now returns a generator that yields samples from the spike-triggered ensemble, while getsta and getstc consume that generator in order to compute their results.

4.5. v0.2 (February 1 2015)

This is a major release with a number of API changes, enhancements, and bug fixes.

The main focus has been on adding thorough documentation of all the packages and functions available.

4.5.1. API changes

  • Changed the filterlength, numSamples and spatialSmoothing optional arguments to filter_length, num_samples and spatialSmoothing in filtertools.py
  • Changed the numTrials to num_trials in spiketools.py
  • Changed the triallength, spatialFrame, temporalFilter and boxdims optional arguments to trial_length, spatial_filter, temporal_filter and box_dims in visualizations.py
  • Changed the stim paramteer to stimulus in stimulustools.py
  • Added a function sample(rate) to spiketools.py which draws spikes from a Poisson distribution with the given rate.
  • Renamed the spikingevent class in spiketools.py to SpikingEvent
  • Renamed the attributes startTime, stopTime and functions trialCounts, eventStats of SpikingEvent to start_time, stop_time and trial_counts, event_stats
  • Moved the peakdet function from the peakdetect.py module to spiketools.py. Removed the peakdetect.py module
  • Renamed the functions getellipseparams and getellipse to get_ellipse_params and fit_ellipse in filtertools.py
  • Renamed the functions upsamplestim and downsamplestim to upsample_stim and downsample_stim in stimulustools.py

4.5.2. General package changes

  • Removed the (Igor and Baccus lab specific) module binary.py
  • Documentation via sphinx is included in the doc/ folder

4.5.3. Known issues

  • Installing with pip has not been tested.
  • Installing with python setup.py install is known to not work on some machines.