Skip to main content

Open Neurophysiology Environment

Project description

Open Neurophysiology Environment

Coverage Status CI workflow

The Open Neurophysiology Environment is a scheme for sharing neurophysiology data in a standardized manner. It is a Python API for searching and loading ONE-standardized data, stored either on a user's local machine or on a remote server.

Please Click here for the main documentation page. For a quick primer on the file naming convention we use, click here.

NB: The API and backend database are still under active development, for the best experience please regularly update the package by running pip install -U ONE-api.

Requirements

ONE runs on Python 3.8 or later, and is tested on the latest Ubuntu and Windows (3.8 and 3.11 only).

Installing

Installing the package via pip typically takes a few seconds. To install, run

pip install ONE-api

Set up

For using ONE with a local cache directory:

from one.api import One
one = One(cache_dir='/home/user/downlaods/ONE/behavior_paper')

To use the default setup settings that connect you to the IBL public database:

from one.api import ONE
ONE.setup(silent=True)  # Will use default information
one = ONE(password='international')

For setting up ONE for a given database e.g. internal IBL Alyx:

from one.api import ONE
one = ONE(base_url='https://alyx.internationalbrainlab.org')

Once you've setup the API for the first time, subsequent calls will use the same parameters:

from one.api import ONE
one = ONE()

To set up ONE for another database and make it the default:

from one.api import ONE
ONE.setup(base_url='https://test.alyx.internationalbrainlab.org', make_default=True)
one = ONE()  # Connected to https://test.alyx.internationalbrainlab.org

Using ONE

To search for sessions:

from one.api import ONE
one = ONE()
print(one.search_terms())  # A list of search keyword arguments

# Search session with wheel timestamps from January 2021 onward
eids = one.search(date_range=['2021-01-01',], dataset='wheel.timestamps')
['d3372b15-f696-4279-9be5-98f15783b5bb']

# Search for project sessions with two probes
eids = one.search(data=['probe00', 'probe01'], project='brainwide')

To load data:

from one.api import ONE
one = ONE()

# Load an ALF object
eid = 'a7540211-2c60-40b7-88c6-b081b2213b21'
wheel = one.load_object(eid, 'wheel')

# Load a specific dataset
eid = 'a7540211-2c60-40b7-88c6-b081b2213b21'
ts = one.load_dataset(eid, 'wheel.timestamps', collection='alf')

# Download, but not load, a dataset
filename = one.load_dataset(eid, 'wheel.timestamps', download_only=True)

To share data:

from one.api import One
one = One.setup()  # Enter the location of the ALF datasets when prompted

Further examples and tutorials can be found in the documentation.

Project details


Release history Release notifications | RSS feed

This version

2.8.0

Download files

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

Source Distribution

one_api-2.8.0.tar.gz (971.8 kB view details)

Uploaded Source

Built Distribution

ONE_api-2.8.0-py3-none-any.whl (115.2 kB view details)

Uploaded Python 3

File details

Details for the file one_api-2.8.0.tar.gz.

File metadata

  • Download URL: one_api-2.8.0.tar.gz
  • Upload date:
  • Size: 971.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for one_api-2.8.0.tar.gz
Algorithm Hash digest
SHA256 7ce58b4241bf05a2f042a8fd0b86c965f276414da0cb0ba2bbc17794aa45aca9
MD5 2c3fee3c4126da86297107ef4cbfb260
BLAKE2b-256 e3f5975433cc9e1dc32bb08396120b42c8a82cc1a107f7006b77a13bf5da3c72

See more details on using hashes here.

File details

Details for the file ONE_api-2.8.0-py3-none-any.whl.

File metadata

  • Download URL: ONE_api-2.8.0-py3-none-any.whl
  • Upload date:
  • Size: 115.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for ONE_api-2.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6a240ec1d099740fe8d917b445ad5f95396726105265a85c9a36d0ade9a00c47
MD5 214f675d5ebcd71ba7d63afb2beec685
BLAKE2b-256 8d46de7f1fdfb5bf6150f7db23fd92a741a6f6c5e4164a0946adcf8b1996c44a

See more details on using hashes here.

Supported by

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