timeseries.TimeSeries
- class timeseries.TimeSeries(times: Union[numpy.ndarray, List, Tuple] = [], periodic: bool = False, t_start: Optional[float] = None, t_stop: Optional[float] = None, plotting_backend: Optional[str] = None, name: str = 'unnamed')[source]
Bases:
object
Base class to represent a continuous or event-based time series. You should use the subclasses
TSContinuous
andTSEvent
to represent continuous-time and event-based time series, respectively. See Working with time series data for futher explanation and examples.- __init__(times: Union[numpy.ndarray, List, Tuple] = [], periodic: bool = False, t_start: Optional[float] = None, t_stop: Optional[float] = None, plotting_backend: Optional[str] = None, name: str = 'unnamed')[source]
Represent a continuous or event-based time series
- Parameters
times (ArrayLike) – [Tx1] vector of time samples
periodic (bool) – Treat the time series as periodic around the end points. Default:
False
t_start (Optional[float]) – If not
None
, the series start time ist_start
, otherwisetimes[0]
t_stop (Optional[float]) – If not
None
, the series stop time ist_stop
, otherwisetimes[-1]
plotting_backend (Optional[str]) – Determines plotting backend. If
None
, backend will be chosen automatically based on what is available.name (str) – Name of the
TimeSeries
object. Default: “unnamed”
Attributes overview
(float) Duration of TimeSeries
(str) Current plotting backend
(float) Start time of time series
(float) Stop time of time series (final sample)
(ArrayLike[float]) Array of sample times
Methods overview
__init__
([times, periodic, t_start, t_stop, ...])Represent a continuous or event-based time series
concatenate_t
(series[, offset])Append multiple TimeSeries objects in time to a new series
contains
(times)Does the time series contain the time range specified in the given time trace? Always true for periodic series
copy
()Return a deep copy of this time series
delay
(offset[, inplace])Return a copy of
self
that is delayed by an offsetisempty
()Test if this
TimeSeries
object is emptyload
(path[, expected_type])Load TimeSeries object from file.
print
()Print an overview of the time series
set_plotting_backend
(backend[, verbose])Set which plotting backend to use with the
plot
methodstart_at
(t_start[, inplace])Convenience function that calls the
delay
method such thatself.t_start
falls att_start
.start_at_zero
([inplace])Convenience function that calls the
delay
method such thatself.t_start
falls at0
.- __init__(times: Union[numpy.ndarray, List, Tuple] = [], periodic: bool = False, t_start: Optional[float] = None, t_stop: Optional[float] = None, plotting_backend: Optional[str] = None, name: str = 'unnamed')[source]
Represent a continuous or event-based time series
- Parameters
times (ArrayLike) – [Tx1] vector of time samples
periodic (bool) – Treat the time series as periodic around the end points. Default:
False
t_start (Optional[float]) – If not
None
, the series start time ist_start
, otherwisetimes[0]
t_stop (Optional[float]) – If not
None
, the series stop time ist_stop
, otherwisetimes[-1]
plotting_backend (Optional[str]) – Determines plotting backend. If
None
, backend will be chosen automatically based on what is available.name (str) – Name of the
TimeSeries
object. Default: “unnamed”
- _modulo_period(times: Union[numpy.ndarray, List, Tuple, float, int]) Union[numpy.ndarray, List, Tuple, float, int] [source]
_modulo_period - Calculate provided times modulo
self.duration
- classmethod concatenate_t(series: Iterable[timeseries.TS], offset: Optional[Union[float, Iterable[Optional[float]]]] = None) timeseries.TS [source]
Append multiple TimeSeries objects in time to a new series
- Parameters
series (Iterable) – Time series to be tacked at the end of each other. These series must have the same number of channels.
offset (Union[None, float, Iterable]) – Offset to be introduced between time traces. First value corresponds to delay of first time series.
- Return TimeSeries
Time series with data from series in
series
- contains(times: Union[int, float, numpy.ndarray, List, Tuple]) bool [source]
Does the time series contain the time range specified in the given time trace? Always true for periodic series
- Parameters
times (ArrayLike) – Array-like containing time points
- Return bool
True iff all specified time points are contained within this time series
- copy() timeseries.TS [source]
Return a deep copy of this time series
- Return TimeSeries
copy of
self
- delay(offset: Union[int, float], inplace: bool = False) timeseries.TS [source]
Return a copy of
self
that is delayed by an offsetFor delaying self, use the
inplace
argument, or.times += ...
instead.- Parameters
Offset (float) – Time by which to offset this time series
inplace (bool) – If
True
, conduct operation in-place (Default:False
; create a copy)
- Return TimeSeries
New
TimeSeries
, delayed
- property duration: float
(float) Duration of TimeSeries
- isempty() bool [source]
Test if this
TimeSeries
object is empty- Return bool
True
iff theTimeSeries
object contains no samples
- classmethod load(path: Union[str, pathlib.Path], expected_type: Optional[str] = None) timeseries.TS [source]
Load TimeSeries object from file. If called from a subclass of :py:class’TimeSeries`, the type of the stored object must match that of the method class.
- Parameters
path (Union[str, Path]) – Path to load from.
expected_type (Optional[str]) – Specify expected type of timeseires (
TSContinuous
or py:class:TSEvent
). Can only be set if method is called from py:class:TimeSeries
class. Default:None
, use whichever type is loaded.
- Return TimeSeries
Loaded time series object
- Raises
TypeError – Unsupported or unexpected type
TypeError – Argument
expected_type
is defined if class is notTimeSeries
.
- property name: str
- property plotting_backend
(str) Current plotting backend
- set_plotting_backend(backend: Optional[str], verbose: bool = True)[source]
Set which plotting backend to use with the
plot
method- Parameters
backend (str) – Specify a backend to use. Supported: {“holoviews”, “matplotlib”}
verbose (bool) – If True, print feedback about which backend has been set
- start_at(t_start: float, inplace: bool = False) timeseries.TS [source]
Convenience function that calls the
delay
method such thatself.t_start
falls att_start
.- Parameters
t_start (float) – Time to which
self.t_start
should be shifted;inplace (bool) – If
True
, conduct operation in-place (Default:False
; create a copy)
- Return TimeSeries
New
TimeSeries
, delayed
- start_at_zero(inplace: bool = False) timeseries.TS [source]
Convenience function that calls the
delay
method such thatself.t_start
falls at0
.- Return TimeSeries
New TimeSeries, with t_start at 0
- property t_start: float
(float) Start time of time series
- property t_stop: float
(float) Stop time of time series (final sample)
- property times
(ArrayLike[float]) Array of sample times