Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates for v2.0.0 #150

Merged
merged 99 commits into from
Apr 16, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
91a3162
oscillator -> oscillation
TomDonoghue Mar 17, 2019
cfeb650
Update filt API
TomDonoghue Mar 18, 2019
5196910
Update / refactor fitler plotting funcs
TomDonoghue Mar 18, 2019
8afa55e
Add separate utils file
TomDonoghue Mar 18, 2019
9aef4fe
Lint & last clean ups
TomDonoghue Mar 18, 2019
82f6d2c
Fix merge of 1.1 test updates
TomDonoghue Mar 18, 2019
6bc2f99
Finish org, & test update, of utils & remove filt edges
TomDonoghue Mar 18, 2019
3ad583d
Set out outline of new test structure
TomDonoghue Mar 18, 2019
5a2517c
Udpate sim_filtered_noise to use general ndsp filter - currently not …
TomDonoghue Mar 18, 2019
a1aa6d7
Consolidate on **filter_kwargs, and small refactors / lints
TomDonoghue Mar 18, 2019
6432d83
Lints & small refactors
TomDonoghue Mar 18, 2019
ea483b1
Update to new rotate_spectrum
TomDonoghue Mar 18, 2019
d387b79
Update & re-organize tests a bit
TomDonoghue Mar 19, 2019
fcadcf4
Small refactors
TomDonoghue Mar 19, 2019
3d045ac
WIP updates, some refactors & internal renamings, and make utils file
TomDonoghue Mar 19, 2019
20950d7
Consolidate on 'f_range'
TomDonoghue Mar 21, 2019
8466dc6
Clean up filt API
TomDonoghue Mar 21, 2019
91a24d7
Update sim API & naming
TomDonoghue Mar 21, 2019
d71b12a
Extend variance normalization to deal with non-continuous signals
TomDonoghue Mar 21, 2019
3ae944e
Add info file, to manage getting sim funcs
TomDonoghue Mar 22, 2019
441bab4
Extend set of util funcs
TomDonoghue Mar 22, 2019
47c733a
Rework combined sims
TomDonoghue Mar 22, 2019
0044714
Fix breaking typo
TomDonoghue Mar 22, 2019
5cfb870
Add decorator to apply normalization
TomDonoghue Mar 23, 2019
c766ed7
Switch up combined approach
TomDonoghue Mar 23, 2019
a368ae2
Misc updates
TomDonoghue Mar 23, 2019
1063c4b
Sim related interim test updates
TomDonoghue Mar 23, 2019
bde69a2
Clear out the leftovers of consistency tests
TomDonoghue Mar 23, 2019
f7fca8a
Update test configs & utils
TomDonoghue Mar 23, 2019
3e8f07f
Fill in bunch of smoke tests
TomDonoghue Mar 23, 2019
e20352c
Fix inputs for plots
TomDonoghue Mar 24, 2019
7c51e1c
Update tutorials for new API
TomDonoghue Mar 24, 2019
9bd1ee8
WIP little updates
TomDonoghue Mar 25, 2019
1ce6dcb
Version bump for new breaking changes
TomDonoghue Apr 1, 2019
2cf2218
Big reorg of files & structure
TomDonoghue Apr 3, 2019
91a3bd8
Fix args for hilbert
TomDonoghue Apr 3, 2019
a6515a5
Move decorators & some utils, and add multidim
TomDonoghue Apr 3, 2019
a50a11c
Update paper to reflect 2.0 orgs
TomDonoghue Apr 3, 2019
abfefb1
Fix / move tests for decorator & utils updates
TomDonoghue Apr 3, 2019
7b51271
Fix up spectral org, wavelets -> tf, add avg_func selection
TomDonoghue Apr 4, 2019
3faea68
Sort out inits, adding docs & aliasing funcs to directory names
TomDonoghue Apr 4, 2019
2bafab6
Work on tests - add a lot of smoke tests, to up coverage
TomDonoghue Apr 4, 2019
a9b6dfa
Some moves and orgs from fixing up API
TomDonoghue Apr 4, 2019
613f8db
Fix API page with updates
TomDonoghue Apr 4, 2019
a000065
Remove old test data
TomDonoghue Apr 4, 2019
6e6ee9c
Add 'docstring' type sentences to API listings
TomDonoghue Apr 4, 2019
cec8cf4
Update module listing in README
TomDonoghue Apr 4, 2019
8fb736b
Update combined to set variance & add - remove old sim utils
TomDonoghue Apr 7, 2019
e29dc1a
Fix imports & add test
TomDonoghue Apr 7, 2019
ea59b52
Small updates & clean ups of spectral
TomDonoghue Apr 8, 2019
2269c7b
Update tutorials for code updates
TomDonoghue Apr 8, 2019
a6239d1
Fix up sim stuff, updates
TomDonoghue Apr 8, 2019
39083a5
Fix up n_samps for sim_powerlaw - note: bit of a hack right now
TomDonoghue Apr 8, 2019
0f0778e
Extend sim_osc_cycle to have more kernels / consolidate approach
TomDonoghue Apr 8, 2019
40bb305
Add sawtooth cycle option
TomDonoghue Apr 8, 2019
cb774bd
Doc updates & add create_times helper func
TomDonoghue Apr 8, 2019
2c065a6
Refactor some periodic stuff to use osc cycle kernels
TomDonoghue Apr 8, 2019
b197fb0
Update normalization appraoches to deal with zeros in bursts
TomDonoghue Apr 8, 2019
13c0c1c
Add bursting func that uses osc_cycle
TomDonoghue Apr 8, 2019
c676d89
Fixes & clean ups for sim updates
TomDonoghue Apr 8, 2019
0fc16b9
Update doc/tutorials for updates
TomDonoghue Apr 8, 2019
657ce89
Add and use check_ax helper function
TomDonoghue Apr 8, 2019
cf0b384
Add plots for rhythm
TomDonoghue Apr 8, 2019
966665f
Fix typos that were breaking things
TomDonoghue Apr 8, 2019
e70be1c
Add time series plts
TomDonoghue Apr 8, 2019
5b1973c
Add plot tests, and associated fixes/updates
TomDonoghue Apr 8, 2019
8184efd
Add spectral plts
TomDonoghue Apr 9, 2019
ce6ca52
Add styling approach
TomDonoghue Apr 9, 2019
fe362e1
Add decorator for saving plts
TomDonoghue Apr 9, 2019
0bdceb3
Add decorators, small updates
TomDonoghue Apr 9, 2019
63b03b3
Update tutorials to use plot funcs
TomDonoghue Apr 9, 2019
a28ac41
Alias all plots to plts folder
TomDonoghue Apr 9, 2019
7c56abd
Small updates
TomDonoghue Apr 9, 2019
2720a46
sketch out plots for spectral plot tests
TomDonoghue Apr 9, 2019
3b6c14a
Fix typo & lint fixes
TomDonoghue Apr 9, 2019
30afca8
Continue updating tutorials to use plts module
TomDonoghue Apr 9, 2019
c28c88a
Fix bug with dealing with labels that stoppd some multi-plotting
TomDonoghue Apr 9, 2019
e5768ff
Update style approach to catch and apply some plot args
TomDonoghue Apr 9, 2019
6efc4b3
Add time frequency plot for instantaneous measures
TomDonoghue Apr 10, 2019
ab65204
Update to use styling args
TomDonoghue Apr 10, 2019
a0e7b3e
Fix style approach to work with subplots
TomDonoghue Apr 10, 2019
aec0f85
Clear site before install, to make sure everything is rebuilt
TomDonoghue Apr 10, 2019
04c635f
Update tf plots and udpates for tutorials
TomDonoghue Apr 10, 2019
cfb0d47
Fix axis label handling, add color support
TomDonoghue Apr 10, 2019
9ce3f88
Add plot fucntios to API list
TomDonoghue Apr 10, 2019
c408158
Update some var names & small doc updates to spectral
TomDonoghue Apr 10, 2019
a4471b0
Update default to not necessarily print filter properties, but always…
TomDonoghue Apr 10, 2019
de4a1be
Merge branch 'master' into v1
TomDonoghue Apr 10, 2019
8762c32
Update MNE examples for code updates
TomDonoghue Apr 10, 2019
1c562fa
Merge v2 updates into plts
TomDonoghue Apr 10, 2019
e44fe87
Update example to use NDSP plot funcs
TomDonoghue Apr 10, 2019
288ec93
Add a 'create_times' helper fucntion
TomDonoghue Apr 10, 2019
ab1f9d8
Update n_second managed in sim jittered oscillator
TomDonoghue Apr 12, 2019
083f3fd
Merge pull request #152 from neurodsp-tools/plts
TomDonoghue Apr 12, 2019
1623fee
Merge pull request #151 from neurodsp-tools/paper
TomDonoghue Apr 12, 2019
7f32d34
Merge branch 'master' into v1
TomDonoghue Apr 12, 2019
3810375
Add multidim decorator to all relevant funcs
TomDonoghue Apr 16, 2019
d45dbc4
Clean up how rotating deals with f=0
TomDonoghue Apr 16, 2019
9580515
Temporarily remove periodic sims that don't match new approach
TomDonoghue Apr 16, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
[![Supported Python Versions](https://img.shields.io/pypi/pyversions/neurodsp.svg)](https://pypi.python.org/pypi/neurodsp/)
[![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/neurodsp-tools/neurodsp/master)

A package of tools to process, analyze, and simulate neural recordings as individual voltage time series, with specific focus on time and frequency domain analyses.
A package of tools to process, analyze, and simulate neural time series, with specific focus on time and frequency domain analyses.

## Documentation

Expand Down Expand Up @@ -64,15 +64,14 @@ Please use the [Github issue tracker](https://github.com/neurodsp-tools/neurodsp

## Modules

NeuroDSP includes the following modules:
Available modules in NeuroDSP include:

- ```filt``` : Filter data with bandpass, highpass, lowpass, or notch filters
- ```burst``` : Detect bursting oscillations in neural signals
- ```laggedcoherence``` : Estimate rhythmicity using the lagged coherence measure
- ```rhythm``` : Find and analyze rhythmic and recurrent patterns in time series
- ```spectral``` : Compute spectral domain features such as power spectra
- ```swm``` : Identify recurrent patterns in signals using sliding window matching
- ```timefrequency``` : Estimate instantaneous measures of oscillatory activity
- ```sim``` : Simulate periodic and aperiodic signal components
- ```sim``` : Simulate time series, including periodic and aperiodic signal components
- ```plts``` : Plotting functions

## Contribute
Expand Down
1 change: 1 addition & 0 deletions doc/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ clean:
## make install:
# Build the html site, and push it to gh-pages branch of repo to deploy
install:
make clean
rm -rf _build/doctrees _build/tmp_html
# Clone, specifically, the gh-pages branch:
# --no-checkout just fetches the root folder without content
Expand Down
231 changes: 195 additions & 36 deletions doc/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,79 +16,170 @@ Table of Contents
Filtering
---------

.. currentmodule:: neurodsp.filt
Functions and utilities for filtering time series.

Design & Apply Filters
~~~~~~~~~~~~~~~~~~~~~~
General Filter Function
~~~~~~~~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.filt.filter

.. autosummary::
:toctree: generated/

filter_signal


FIR Filters
~~~~~~~~~~~

.. currentmodule:: neurodsp.filt.fir

.. autosummary::
:toctree: generated/

filter_signal_fir
filter_signal_iir
design_fir_filter

IIR Filters
~~~~~~~~~~~

.. currentmodule:: neurodsp.filt.iir

.. autosummary::
:toctree: generated/

filter_signal_iir
design_iir_filter

Filter Properties
~~~~~~~~~~~~~~~~~
Check Filter Properties
~~~~~~~~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.filt.checks

.. autosummary::
:toctree: generated/

check_filter_definition
check_filter_properties

Filter Utilities
~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.filt.utils

.. autosummary::
:toctree: generated/

compute_frequency_response
compute_pass_band
compute_trans_band
compute_transition_band
compute_nyquist
remove_filter_edges

Time-Frequency analysis
-----------------------

.. currentmodule:: neurodsp.timefrequency
Functions and utilities for time-frequency analyses.

Hilbert Methods
~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.timefrequency.hilbert

.. autosummary::
:toctree: generated/

robust_hilbert
phase_by_time
amp_by_time
freq_by_time

Wavelet Methods
~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.timefrequency.wavelets

.. autosummary::
:toctree: generated/

morlet_transform
morlet_convolve

Spectral analysis
-----------------

.. currentmodule:: neurodsp.spectral
Functions and utilities for spectral analyses.

Spectral Power Measures
~~~~~~~~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.spectral.spectral

.. autosummary::
:toctree: generated/

compute_spectrum
compute_scv
compute_scv_rs
spectral_hist
morlet_transform
morlet_convolve
rotate_powerlaw
compute_spectrum
compute_spectrum_welch
compute_spectrum_wavelet
compute_spectrum_medfilt

Rhythmic analysis
-----------------
Spectral Variance Measures
~~~~~~~~~~~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.spectral.spectral

.. autosummary::
:toctree: generated/

compute_scv
compute_scv_rs
compute_spectral_hist

Spectral Utilities
~~~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.spectral.utils

.. autosummary::
:toctree: generated/

trim_spectrum
rotate_powerlaw

Burst Detection
~~~~~~~~~~~~~~~
---------------

Functions and utilities for detection bursts in time series.

Burst Detection Algorithms
~~~~~~~~~~~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.burst

.. autosummary::
:toctree: generated/

detect_bursts_dual_threshold

Burst Utilities
~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.burst.utils

.. autosummary::
:toctree: generated/

compute_burst_stats

Rhythm Analysis
---------------

Functions and utilities for finding and analyzing rhythmic and recurring patterns in time series.

Sliding Window Matching
~~~~~~~~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.swm
.. currentmodule:: neurodsp.rhythm.swm

.. autosummary::
:toctree: generated/
Expand All @@ -98,47 +189,115 @@ Sliding Window Matching
Lagged Coherence
~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.laggedcoherence
.. currentmodule:: neurodsp.rhythm.lc

.. autosummary::
:toctree: generated/

lagged_coherence

Signal simulation
-----------------

.. currentmodule:: neurodsp.sim
Simulations
-----------

.. autosummary::
:toctree: generated/
Functions and utilities for simulating time series.

Periodic Signals
~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.sim.periodic

.. autosummary::
:toctree: generated/

sim_oscillator
sim_bursty_oscillator
sim_jittered_oscillator
sim_oscillation
sim_bursty_oscillation
sim_bursty_oscillation_features
sim_jittered_oscillation

Aperiodic Signals
~~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.sim.aperiodic

.. autosummary::
:toctree: generated/

sim_filtered_noise
sim_synaptic_noise
sim_ou_process
sim_variable_powerlaw
sim_powerlaw
sim_poisson_pop
sim_synaptic_current
sim_random_walk

Transients
~~~~~~~~~~

.. currentmodule:: neurodsp.sim.transients

.. autosummary::
:toctree: generated/

sim_osc_cycle
sim_synaptic_kernel

Combined Signals
~~~~~~~~~~~~~~~~

.. currentmodule:: neurodsp.sim.combined

.. autosummary::
:toctree: generated/

sim_combined

Plots
-----

Functions for plotting time series and analysis outputs.

Time Series
~~~~~~~~~~~

.. currentmodule:: neurodsp.plts.time_series

.. autosummary::
:toctree: generated/

plot_time_series
plot_instantaneous_measure
plot_bursts

Spectral
~~~~~~~~

.. currentmodule:: neurodsp.plts.spectral

.. autosummary::
:toctree: generated/

plot_power_spectra
plot_scv
plot_scv_rs_lines
plot_scv_rs_matrix
plot_spectral_hist

Filter
~~~~~~

.. currentmodule:: neurodsp.plts.filt

.. autosummary::
:toctree: generated/

plot_filter_properties
plot_frequency_response
plot_impulse_response

Rhythm
~~~~~~

.. currentmodule:: neurodsp.plts.rhythm

.. autosummary::
:toctree: generated/

sim_noisy_oscillator
sim_noisy_bursty_oscillator
plot_swm_pattern
plot_lagged_coherence
Loading