No project description provided
Project description
np-aind-metadata
Usage
conda create -n np_aind_metadata python>=3.10
conda activate np_aind_metadata
pip install np_aind_metadata
On-prem usage
If on Allen Institute premises, additional features are available via np-config
. To use on-prem features install np-config
.
pip install np-config
Python
On-prem
Copies the latest rig.json
from storage to a local path.
>>> from pathlib import Path
>>> import datetime
>>> from np_aind_metadata import rigs
>>> rigs.copy_rig("NP3", output_path=Path("rig.json"))
PosixPath('rig.json')
Off-prem
Updates a rig json and store it at output path.
>>> from pathlib import Path
>>> from np_aind_metadata.update import update_rig
>>> update_rig(
... Path(".", "examples", "rig.json"),
... open_ephys_settings_sources=[
... Path(
... ".",
... "examples",
... "example-session-directory",
... "settings.xml"
... ),
... ],
... output_path=Path("rig.json"),
... )
PosixPath('rig.json')
Convenience functions
Direct support for common use cases.
np-codeocean
Parses a dynamic routing session directory for a session.json
, adds it's corresponding rig.json
, and updates session.json
to reflect the rig.json
it is associated with. If not onprem, rig_storage_dir
will need to be supplied.
>>> from pathlib import Path
>>> from np_aind_metadata.integrations import dynamic_routing_task
>>> session_dir = Path("examples") / "example-session-directory"
>>> dynamic_routing_task.add_rig_to_session_dir(session_dir, datetime.date(2024, 4, 1))
Model storage
Models are stored locally on disk. To initialize model storage.
Initialize storage for all supported rigs.
np-aind-metadata init-rig-storage "/directory/to/store/rigs"
Initialize storage for a specific rig.
np-aind-metadata init-rig-storage "/directory/to/store/rigs" "NP3" --date 2022/02/07
Update a stored rig.
np-aind-metadata update-rig "/directory/to/store/rigs" "NP3" --date 2022/02/07
Local development
Testing
Testing intended for cloned project from source control.
Unit tests
pdm run pytest
Storage tests
pdm run pytest-storage
On-prem tests
Requires user to likely be on prem with np group dependencies installed.
Install np group dependencies
pdm install -G np
Run tests
pdm run pytest-onprem
All tests
Requires dependencies from onprem.
pdm run pytest-full
Development
See instructions in https://github.com/AllenInstitute/np-aind-metadata/CONTRIBUTING.md and the original template: https://github.com/AllenInstitute/copier-pdm-npc/blob/main/README.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for np_aind_metadata-0.1.12-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 54d5570abb502a21431c637a03490102989caba918ba7f196d150261fe0db95d |
|
MD5 | db21c0f8767d8a8720bcd74ea48966fe |
|
BLAKE2b-256 | 6953e7d1949c42fe708a6158d58bfcedec059bb7035974e1ae2e47dd1e675980 |