Skip to main content

A package for processing neural datasets

Project description

Documentation | Join our Discord community

PyPI version Documentation Status Tests Linting Discord

brainsets is a Python package for processing neural data into a standardized format.

Installation

brainsets is available for Python 3.10+

To install the package, run the following command:

pip install brainsets

List of available brainsets

brainset_id Documentation Raw Data Size Processed Data Size
churchland_shenoy_neural_2012 Link 46 GB 25 GB
flint_slutzky_accurate_2012 Link 3.2 GB 151 MB
odoherty_sabes_nonhuman_2017 Link 22 GB 26 GB
pei_pandarinath_nlb_2021 Link 688 KB 22 MB
perich_miller_population_2018 Link 13 GB 2.9 GB
kemp_sleep_edf_2013 Link 8.2 GB 60 GB
neuroprobe_2025 Link 138 GB 257 GB
allen_visual_coding_ophys_2016 Link 356 GB 58 GB
vollan_moser_alternating_2025 Link 16.4 GB 4.5 GB

Acknowledgements

This work is only made possible thanks to the public release of these valuable datasets by the original researchers. If you use any of the datasets processed by brainsets in your research, please make sure to cite the appropriate original papers and follow any usage guidelines specified by the dataset creators. Proper attribution not only gives credit to the researchers who collected and shared the data but also helps promote open science practices in the neuroscience community. You can find the original papers and usage guidelines for each dataset in the brainsets documentation.

Using the brainsets CLI

Configuring data directories

First, configure the directories where brainsets will store raw and processed data:

brainsets config set

You will be prompted to enter the paths to the raw and processed data directories.

$> brainsets config set
Enter raw data directory: ./data/raw
Enter processed data directory: ./data/processed

You can update the configuration at any time by running the config set command again.

To view the current configuration:

brainsets config show

Listing available datasets

You can list the available datasets by running the list command:

brainsets list

Preparing data

You can prepare a dataset by running the prepare command:

brainsets prepare <brainset>

Data preparation involves downloading the raw data from the source then processing it, following a set of rules defined in pipelines/<brainset>/.

For example, to prepare the Perich & Miller (2018) dataset, you can run:

brainsets prepare perich_miller_population_2018 --cores 8

Contributing

If you are planning to contribute to the package, you can install the package in development mode by running the following command:

pip install -e ".[dev]"

Install pre-commit hooks:

pre-commit install

Unit tests are located under test/. Run the entire test suite with

pytest

or test individual files via, e.g., pytest test/test_enum_unique.py

Cite

Please cite our paper if you use this code in your own work:

@inproceedings{
    azabou2023unified,
    title={A Unified, Scalable Framework for Neural Population Decoding},
    author={Mehdi Azabou and Vinam Arora and Venkataramana Ganesh and Ximeng Mao and Santosh Nachimuthu and Michael Mendelson and Blake Richards and Matthew Perich and Guillaume Lajoie and Eva L. Dyer},
    booktitle={Thirty-seventh Conference on Neural Information Processing Systems},
    year={2023},
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

brainsets-0.2.1.tar.gz (886.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

brainsets-0.2.1-py3-none-any.whl (133.5 kB view details)

Uploaded Python 3

File details

Details for the file brainsets-0.2.1.tar.gz.

File metadata

  • Download URL: brainsets-0.2.1.tar.gz
  • Upload date:
  • Size: 886.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for brainsets-0.2.1.tar.gz
Algorithm Hash digest
SHA256 1e04059dde1e717f92063fb07111b7674d62fd5e91880785eed419f69e6b1e43
MD5 bb6d251b2e84a3ae8dac224a0c34197b
BLAKE2b-256 7bdb354274cdf1a09f73cd83998085048c31d424d3188cc8adf8e0d3adeead63

See more details on using hashes here.

Provenance

The following attestation bundles were made for brainsets-0.2.1.tar.gz:

Publisher: publish.yml on neuro-galaxy/brainsets

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file brainsets-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: brainsets-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 133.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for brainsets-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d84844a51d32c63e5592c4c7d77d0ca3931923b57c4051b96ee22f1b1f776105
MD5 4b209c9e6612039afd6b6255376b94d1
BLAKE2b-256 ea4026663e63f0e47ea84374c747eefaeef40c82f7043c8fe8a310b473896278

See more details on using hashes here.

Provenance

The following attestation bundles were made for brainsets-0.2.1-py3-none-any.whl:

Publisher: publish.yml on neuro-galaxy/brainsets

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page