Python API for efficient storage and retrieval of single-cell data using TileDB
Project description
Overview
This is a Python implementation of the SOMA API specification for interacting with the Unified Single-cell Data Model.
Installation
TileDB-SOMA is available on PyPI and Conda, and can be installed via pip
or mamba
as indicated below.
python -m pip install tiledbsoma
mamba install -c conda-forge -c tiledb tiledbsoma-py
To install a specific version:
$ python -m pip install git+https://github.com/single-cell-data/TileDB-SOMA.git@0.0.6#subdirectory=apis/python
To update to the latest version:
$ python -m pip install --upgrade tiledbsoma
From source
- This requires
tiledb
(see ./setup.cfg for version), in addition to other dependencies in setup.cfg. - Clone this repo
cd
into your checkout and thencd apis/python
python -m pip install .
- Or, if you wish to modify the code and run it,
python -m pip install -v -e .
- If the TileDB and TileDB-SOMA libraries are locally installed to a custom directory, such as
/usr/local
, set the path with environment variablesTILEDB_PATH
andTILEDBSOMA_PATH
,TILEDB_PATH=/usr/local python -m pip install -v -e .
- Optionally, if you prefer, you can run that inside
venv
:$ python -m venv venv $ . ./venv/bin/activate $ python -m pip install -v -e .
- In either case:
python -m pytest tests
Status
Please see https://github.com/single-cell-data/TileDB-SOMA/issues.
platform_config
format
When accessing SOMA APIs, TileDB-specific settings can be configured with the platform_config
parameter.
The options accepted by TileDB SOMA are described here, using TypeScript interface syntax:
interface PlatformConfig {
tiledb?: TDBConfig;
}
interface TDBConfig {
create?: TDBCreateOptions;
}
interface TDBCreateOptions {
dims?: { [dim: string]: TDBDimension };
attrs?: { [attr: string]: TDBAttr };
allows_duplicates?: bool;
offsets_filters?: TDBFilter[];
validity_filters?: TDBFilter[];
capacity?: number;
cell_order?: string;
tile_order?: string;
}
interface TDBDimension {
filters?: TDBFilter[];
tile?: number;
}
interface TDBAttr {
filters?: TDBFilter[];
}
/**
* Either the name of a filter (in which case it will use
* the default arguments) or a specification with filter args.
*/
type TDBFilter = string | TDBFilterSpec;
interface TDBFilterSpec {
/** The name of the filter. */
_name: string;
/** kwargs that are passed when constructing the filter. */
[kwarg: string]: any;
}
Information for developers
Please see the TileDB-SOMA wiki.
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 Distributions
Hashes for tiledbsoma-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5f3264e5b64b912e5e731572ad0dff28c80681d9f8ec115204c6b497e99e1da |
|
MD5 | 249d28af7fd53cb64c18b08c51b1e2ca |
|
BLAKE2b-256 | 08d3234f0fbddb5e183667fa8d390297b4a78fb0d5fab1d2d761ce9aa232a8e6 |
Hashes for tiledbsoma-1.3.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 91db6b0a212075ea453f0e7577788312273cc3b41e61cce200d73bec8cef850b |
|
MD5 | ee53fc9f34cc84c3c9db243cc6fd3058 |
|
BLAKE2b-256 | 35d223073b440ef6ef2bdadd201dfaf13cda97504e69244234327b2bff304761 |
Hashes for tiledbsoma-1.3.0-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 918bd7881939b5553b6e9cbfa17a88f4771b8fd1a777047eeb95ebdacfc6a501 |
|
MD5 | f592b99ceac0367fd9586ebaecc124a6 |
|
BLAKE2b-256 | 2905d756844b7d30770edc1c3055030aead618136d4f49d6df413fa38b1c879d |
Hashes for tiledbsoma-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6475604c69eecce7b07139bb24b305265e99f39834f2755660556a2e7d2f0f64 |
|
MD5 | a66876ca475429469d2af3ca0dcfd0cf |
|
BLAKE2b-256 | 6a80295812188a5751cac4b1f1315bc2c8ccc6cf747370d937c90246bb355a24 |
Hashes for tiledbsoma-1.3.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c7d78a93cd818a737567aa196410930ee734b89fb3561d12987004003ebaf91 |
|
MD5 | 5c78c6f7b0779e36ec384e73170fd36f |
|
BLAKE2b-256 | b9bf26d32d6d95a3446b7a943f0899003bf2ff210eb68209806ba2dc2e3dec5e |
Hashes for tiledbsoma-1.3.0-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0338c808ee2255110ee67aadcfd76ada77a257432e0b3d63e8aee9086df105c6 |
|
MD5 | a0f3a28041222c5374e40919db72d736 |
|
BLAKE2b-256 | af53451ee2663c3dd477a00c43aef4a213afea6aae9cd4347875f20119073e18 |
Hashes for tiledbsoma-1.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b61cc7f4892309411447a101959fb91c98dd2a1a74c3702b31a077c646a2e3f |
|
MD5 | 2ffc258008b7b729fb1ebe626cd0457e |
|
BLAKE2b-256 | ef4667a34e7581a4b1b1390b119710179897b1b275a29fc2784eff8ad1f28bd3 |
Hashes for tiledbsoma-1.3.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 05f9fcf6f1ceafec09e821a453e892e2a9eba95169a5003a63c35c1cba5ede2d |
|
MD5 | 7b9e0ada9383d867660c1f4ac2007a8c |
|
BLAKE2b-256 | 1a522a5a136a180cb946ce34f7c65994bb7f80bdd88571993f089c215743e304 |
Hashes for tiledbsoma-1.3.0-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d9378e62e0186a48d4f4cdcc19758bc746e630c1d0cebf6cc057d4a28b5e975 |
|
MD5 | 0d1ad42caedd88873f1e1c13cb55b3fd |
|
BLAKE2b-256 | 6d1506142111e6f51144e22d661f9cc1057c897206404a4b0d59185341c93518 |
Hashes for tiledbsoma-1.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ffd2ea0dd57105e8f591f9e6ffc468f0216fbb551287fb926da062caf13c055 |
|
MD5 | fe0dcba91c46ba5808da5b428d1748d2 |
|
BLAKE2b-256 | 595f9703b397f276d568ad2962d2f913663dd5b61259435e59d6edbeb17f2268 |
Hashes for tiledbsoma-1.3.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3285793eef663e8206d024eb1ab094d64ae1f40b37a4c7cfe0040154f07af83a |
|
MD5 | ee0c7e2754d0ffa2b831dd2f24c15997 |
|
BLAKE2b-256 | 515f9097e4c26af3584ca1f4172267d6f4f38eeda04b6e9a8d07349fc06449a1 |
Hashes for tiledbsoma-1.3.0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbbbd98df793c9a2c1accc2a92ab14a6bb4ee9e8ab2e41de62e657ccf612afcb |
|
MD5 | 6b7a12bbc050fb9b4e62df79264203b9 |
|
BLAKE2b-256 | 5a61e93ec2a0c417a66ef45fa9352f9adc229996a0764c23a9867cab54875730 |
Hashes for tiledbsoma-1.3.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e88865dc19fa11651dbd149c9b6e6f4e435f56602169852c829393b1e3e3be26 |
|
MD5 | 689a9cd0cb5623cf54d9d6eb8b3097ff |
|
BLAKE2b-256 | 6b1813d0a4ecf131c739f2d81a5567646ee3f2a6ec7d5cdbb4f54f3f222196e7 |
Hashes for tiledbsoma-1.3.0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccbe2fdf1d5e51f4a2a65342db09c497b0a889b44be5ec6931bcf2f5b4a5ec44 |
|
MD5 | 3ac1cd63727d146209f2639dab608db8 |
|
BLAKE2b-256 | 74a6000b1b096124581b659681a0cf2d543961cac2ba8a1a8fd530fa3d0f2677 |