|
24 | 24 | import numpy as np |
25 | 25 | import quantities as pq |
26 | 26 | import scipy.signal |
| 27 | +from typing import Union |
27 | 28 |
|
28 | 29 | from elephant.utils import check_same_units |
29 | 30 |
|
|
38 | 39 | ] |
39 | 40 |
|
40 | 41 |
|
41 | | -def zscore(signal: neo.AnalogSignal | list[neo.AnalogSignal], |
| 42 | +def zscore(signal: Union[neo.AnalogSignal, list[neo.AnalogSignal]], |
42 | 43 | inplace: bool = True |
43 | | - ) -> neo.AnalogSignal | list[neo.AnalogSignal]: |
| 44 | + ) -> Union[neo.AnalogSignal, list[neo.AnalogSignal]]: |
44 | 45 | r""" |
45 | 46 | Apply a z-score operation to one or several `neo.AnalogSignal` objects. |
46 | 47 |
|
@@ -198,9 +199,9 @@ def zscore(signal: neo.AnalogSignal | list[neo.AnalogSignal], |
198 | 199 |
|
199 | 200 |
|
200 | 201 | def cross_correlation_function(signal: neo.AnalogSignal, |
201 | | - channel_pairs: list | np.ndarray, |
| 202 | + channel_pairs: Union[list, np.ndarray], |
202 | 203 | hilbert_envelope: bool = False, |
203 | | - n_lags: int | None = None, |
| 204 | + n_lags: Union[int, None] = None, |
204 | 205 | scaleopt: str = 'unbiased') -> neo.AnalogSignal: |
205 | 206 | r""" |
206 | 207 | Computes an estimator of the cross-correlation function |
@@ -392,13 +393,13 @@ def cross_correlation_function(signal: neo.AnalogSignal, |
392 | 393 | return cross_corr |
393 | 394 |
|
394 | 395 |
|
395 | | -def butter(signal: neo.AnalogSignal | pq.Quantity | np.ndarray, |
396 | | - highpass_frequency: pq.Quantity | float | None = None, |
397 | | - lowpass_frequency: pq.Quantity | float | None = None, |
| 396 | +def butter(signal: Union[neo.AnalogSignal, pq.Quantity, np.ndarray], |
| 397 | + highpass_frequency: Union[pq.Quantity, float, None] = None, |
| 398 | + lowpass_frequency: Union[pq.Quantity, float, None] = None, |
398 | 399 | order: int = 4, |
399 | 400 | filter_function: str = 'filtfilt', |
400 | | - sampling_frequency: pq.Quantity | float = 1.0, |
401 | | - axis: int = -1) -> neo.AnalogSignal | pq.Quantity | np.ndarray: |
| 401 | + sampling_frequency: Union[pq.Quantity, float] = 1.0, |
| 402 | + axis: int = -1) -> Union[neo.AnalogSignal, pq.Quantity, np.ndarray]: |
402 | 403 | """ |
403 | 404 | Butterworth filtering function for `neo.AnalogSignal`. |
404 | 405 |
|
@@ -568,10 +569,10 @@ def butter(signal: neo.AnalogSignal | pq.Quantity | np.ndarray, |
568 | 569 | return filtered_data |
569 | 570 |
|
570 | 571 |
|
571 | | -def wavelet_transform(signal: neo.AnalogSignal | np.ndarray | list, |
572 | | - frequency: float | list[float], |
| 572 | +def wavelet_transform(signal: Union[neo.AnalogSignal, np.ndarray, list], |
| 573 | + frequency: Union[float, list[float]], |
573 | 574 | n_cycles: float = 6.0, |
574 | | - sampling_frequency: float | pq.Quantity = 1.0, |
| 575 | + sampling_frequency: Union[float, pq.Quantity] = 1.0, |
575 | 576 | zero_padding: bool = True) -> np.ndarray: |
576 | 577 | r""" |
577 | 578 | Compute the wavelet transform of a given signal with Morlet mother |
@@ -743,7 +744,7 @@ def _morlet_wavelet_ft(freq, n_cycles, fs, n): |
743 | 744 |
|
744 | 745 |
|
745 | 746 | def hilbert(signal: neo.AnalogSignal, |
746 | | - padding: str | int | None = 'nextpow') -> neo.AnalogSignal: |
| 747 | + padding: Union[str, int, None] = 'nextpow') -> neo.AnalogSignal: |
747 | 748 | """ |
748 | 749 | Apply a Hilbert transform to a `neo.AnalogSignal` object in order to |
749 | 750 | obtain its (complex) analytic signal. |
@@ -852,10 +853,10 @@ def hilbert(signal: neo.AnalogSignal, |
852 | 853 |
|
853 | 854 |
|
854 | 855 | def rauc(signal: neo.AnalogSignal, |
855 | | - baseline: pq.Quantity | str | None = None, |
856 | | - bin_duration: pq.Quantity | None = None, |
857 | | - t_start: pq.Quantity | None = None, |
858 | | - t_stop: pq.Quantity | None = None) -> pq.Quantity | neo.AnalogSignal: |
| 856 | + baseline: Union[pq.Quantity, str, None] = None, |
| 857 | + bin_duration: Union[pq.Quantity, None] = None, |
| 858 | + t_start: Union[pq.Quantity, None] = None, |
| 859 | + t_stop: Union[pq.Quantity, None] = None) -> Union[pq.Quantity, neo.AnalogSignal]: |
859 | 860 | """ |
860 | 861 | Calculate the rectified area under the curve (RAUC) for a |
861 | 862 | `neo.AnalogSignal`. |
|
0 commit comments