ca.nengo.util
Class DataUtils

java.lang.Object
  extended by ca.nengo.util.DataUtils

public class DataUtils
extends java.lang.Object

Tools manipulating TimeSeries and SpikePattern data. TODO: test; remove Plotter.filter() references

Author:
Bryan Tripp

Constructor Summary
DataUtils()
           
 
Method Summary
static TimeSeries extractDimension(TimeSeries series, int dim)
           
static TimeSeries extractTime(TimeSeries series, float start, float end)
           
static TimeSeries filter(TimeSeries series, float tau)
           
static SpikePattern sort(SpikePattern pattern, Ensemble ensemble)
          Attempts to sort a SpikePattern by properties of the associated neurons.
static TimeSeries subsample(TimeSeries series, int period)
          Draws one of every period samples from a given TimeSeries.
static SpikePattern subset(SpikePattern pattern, int[] indices)
          Extracts spikes of selected neurons from a given SpikePattern.
static SpikePattern subset(SpikePattern pattern, int start, int interval, int end)
          Extracts spikes of selected neurons from a given SpikePattern.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataUtils

public DataUtils()
Method Detail

filter

public static TimeSeries filter(TimeSeries series,
                                float tau)
Parameters:
series - A TimeSeries to which to apply a 1-D linear filter
tau - Filter time constant
Returns:
Filtered TimeSeries

extractDimension

public static TimeSeries extractDimension(TimeSeries series,
                                          int dim)
Parameters:
series - An n-dimensional TimeSeries
dim - Index (less than n-1) of dimension to extract
Returns:
One-dimensional TimeSeries composed of extracted dimension

extractTime

public static TimeSeries extractTime(TimeSeries series,
                                     float start,
                                     float end)
Parameters:
series - Any TimeSeries
start - Beginning of extracted portion of series
end - End of extracted portion of series
Returns:
A TimeSeries that includes any samples in the given TimeSeries between the start and end times

subsample

public static TimeSeries subsample(TimeSeries series,
                                   int period)
Draws one of every period samples from a given TimeSeries.

Parameters:
series - Any TimeSeries
period - The sub-sampling period
Returns:
New TimeSeries composed of one of every period samples in the original

subset

public static SpikePattern subset(SpikePattern pattern,
                                  int start,
                                  int interval,
                                  int end)
Extracts spikes of selected neurons from a given SpikePattern.

Parameters:
pattern - Any SpikePattern
start - Neuron number at which to start extraction
interval - Spikes are taken from one every interval neurons
end - Neuron number at which to end extraction
Returns:
Spikes from selected neurons in the original pattern

subset

public static SpikePattern subset(SpikePattern pattern,
                                  int[] indices)
Extracts spikes of selected neurons from a given SpikePattern.

Parameters:
pattern - Any SpikePattern
indices - Indices of neurons in original pattern from which to extract spikes
Returns:
Spikes from selected neurons in the original pattern

sort

public static SpikePattern sort(SpikePattern pattern,
                                Ensemble ensemble)
Attempts to sort a SpikePattern by properties of the associated neurons.

Parameters:
pattern - A SpikePattern
ensemble - Ensemble from which spikes come
Returns:
A SpikePattern that is re-ordered according to neuron properties, if possible