Skip to main content

Alyx Connector, based on the Open Neurophysiology Environment

Project description

Open Neurophysiology Environment - HaissLab flavour

The Open Neurophysiology Environment is a scheme for accessing neurophysiology data from an alyx database server, in a standardized manner. For information on how to manage file names when registering data with ONE to an alyx server, please click here. This github page contains an 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.

NB: The API and backend database are still under active development, for the best experience please regularly update the package by running :
pip install --force-reinstall --no-deps git+https://gitlab.pasteur.fr/haisslab/data-management/ONE.git.
This will force the reinstallation of the package, without the need to do a pip uninstall ONE-api first, and without reinstalling the dependancies like numpy etc (hence faster).

Requirements

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

Installing

Installing the package via pip typically takes a few seconds. To install, activate your developpement environment :

conda activate <myenvironment>

Then run the One-api install using :

pip install git+https://gitlab.pasteur.fr/haisslab/data-management/ONE.git

Set up

For setting up ONE for a given database e.g. our local version of Alyx at HaissLab:

from one import ONE
one = ONE(base_url='http://157.99.138.172:8080')

Once you've setup the server, subsequent calls will use the same parameters:

from one import ONE
one = ONE() #uses the same parameters entered the first time and stored by default in C:\Users\<myusername>\AppData\Roaming\.one\.157.99.138.172_8080: 

For using ONE with a local cache directory (not recommanded for now):

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

Using ONE

To search for sessions:

from one 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'] # this is a list of unique ids of sessions returned. Here only one has been found with given parameters

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

Further examples and tutorials can be found in the main IBL documentation documentation.

(Not currentely supported :)

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)

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

alyx_connector-2.1.15.tar.gz (132.0 kB view details)

Uploaded Source

Built Distribution

alyx_connector-2.1.15-py3-none-any.whl (108.2 kB view details)

Uploaded Python 3

File details

Details for the file alyx_connector-2.1.15.tar.gz.

File metadata

  • Download URL: alyx_connector-2.1.15.tar.gz
  • Upload date:
  • Size: 132.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for alyx_connector-2.1.15.tar.gz
Algorithm Hash digest
SHA256 d8182a0c715efa8c4d39dbd590f870b23c07d07d46fbcd14e3b393dfc7de2702
MD5 97b46cc1b848dba6f7e25566c1a329d7
BLAKE2b-256 1e7dd53ad40f7d67b09a2565805ad105227982c5ae111cec7391e40a1940d2d1

See more details on using hashes here.

File details

Details for the file alyx_connector-2.1.15-py3-none-any.whl.

File metadata

File hashes

Hashes for alyx_connector-2.1.15-py3-none-any.whl
Algorithm Hash digest
SHA256 90e5fa849d3dddd98a2160d933ed1bb9adb545dff2fcb68529b88467dd604980
MD5 4e336ed9c8c8a963342a0c9a40be4675
BLAKE2b-256 24b8af71f0da38cc04ef62a0d51e0a8dec12c4e7b67983445c36e7dc39bf7782

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