A Package of Tools for Analyzing Electrophysiology Data in Free Singing birds, this package is intended to make Analysis of Sequential Vocal Motor Behavior Easier.
Software written by the Gilja Group
Documentation for the BirdSongToolbox module is underdevelopment, however it can be found at the documentation site
The documentation intends to include a full set of tutorials covering the functionality of BirdSongToolbox.
This documentation includes:
- Overview: with information that both motivates the importance of behavioral context and descriptions of important concepts when using BirdSongToolbox to analyze sequential vocal-motor behavior.
- Tutorials: with a step-by-step guide through the various uses of the package
- Glossary: which defines all the key terms that are useful in understanding the package
- FAQ: answering frequently asked questions
- API: which lists and describes all the code and functionality available in the module
- Examples: demonstrating example analyses and use cases, and other functionality
At present BirdSongToolbox has infrastructure and documentation of two versions of derived data. The older version will likely be deprecated in the future however there is a early tutorial showing how to work with this data format
A Basic Introduction Tutorial can be found here
If you have a question about using BirdSongToolbox that doesn't seem to be covered by the documentation, feel free to open an issue and ask!
BirdSongToolbox is written in Python, and requires Python >= 3.5 to run.
It has the following required dependencies:
- neurodsp
- numpy
- scipy >= 0.19
- h5py
- decorator
- PyYAML
- praatio
- scikit-learn
- pandas
- matplotlib is needed to visualize data and behavior
There are also optional dependencies, which are not required for package to work, but offer extra functionality:
Alternative Signal Processing Back-end
- mne is a alternative back-end for signal processing.
For Local Testing
- pytest is needed to run the test suite locally
- pytest-ordering is needed for test suite to run in order locally
- googledrivedownloader is needed to download test data locally
We recommend using the Anaconda distribution to manage these requirements.
Stable Release Version
Note: At Present there is no official Stable Release, however once there is, the below should be true To install the latest release of BirdSongToolbox, you can install from pip:
$ pip install BirdSongToolbox
Development Version
To get the development version (updates that are not yet published to pip), you can clone this repo.
$ git clone https://github.com/Darilbii/BirdSongToolbox.git
To install this cloned copy of BirdSongToolbox, move into the directory you just cloned, and run:
$ pip install .
Editable Version
If you want to install an editable version, for making contributions, download the development version as above, and run:
$ pip install -e .
It is recommended that if you are using conda virtual environments, to first activate the specific environment you will be developing contributions on prior to running the above line
Please use the Github issue tracker to file bug reports and/or ask questions about this project.
BirdSongToolbox welcomes and encourages contributions from the community!
If you have an idea of something to add to BirdSongToolbox, please start by opening an issue.
When writing code to add to BirdSongToolbox, please follow the Contribution Guidelines, and also make sure to follow our Code of Conduct.
If you use this code in your project, please cite:
`
Brown DE, Chavez JI, Nguyen DH, Kadwory A, Voytek B, Arneodo E, Gentner T, Gilja V. Local Field Potentials in a Pre-motor Region Predict Learned Vocal Sequences. Neuroscience; 2020 Jun. doi:10.1101/2020.06.30.179861
`
Special Thanks to Tom Donoghue and the Voytek Lab who were heavily influential in the development of this readme