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.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ef8871ee0265a376596b0c63e7bacd1ed9650c93aeca4a6e1b3b9bf28725c01 |
|
MD5 | d5141943fc3a51d2856b92d2ab17e308 |
|
BLAKE2b-256 | aa71c220cec2c2042593de94a074c7ccfd75e58beb1b7f4dad3720d0820b1333 |
Hashes for tiledbsoma-1.7.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e9426ec01c960f9ffe5638867e23fe4db7a084efa35bcf9a10fa423a150778d5 |
|
MD5 | 27bd8275e71a98d71aadc464845627af |
|
BLAKE2b-256 | b8c68457ffc4cd6f4ba7e018275923f0c7d0ee90fdb9f5b0642c908b6a070af5 |
Hashes for tiledbsoma-1.7.0-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 59a0b2354a730928108de893b4c9ab477cca42c79a7d83e9037498ae4d6f5ccd |
|
MD5 | b7b996d9b351a7491633c3d7c2eeaa8a |
|
BLAKE2b-256 | 12f2345b4f8405fda945d4606a44ed81e26cb41fe283d0508fb2a4eebd49fc80 |
Hashes for tiledbsoma-1.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0bfbb5e99cace1bc7e1386d7481425ad860110f3e647bf3cd184dd9ac389f265 |
|
MD5 | 08921d45e02beda42e70d90b1a5fa8aa |
|
BLAKE2b-256 | 7a4b58c553fc75e9fdc51450feb2017aa350fa55773d0a2b5b0e3cceef482560 |
Hashes for tiledbsoma-1.7.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 595dd99c52216515845fc098882cbe8e324df7a0efcb658b80f6cc38dcbdf159 |
|
MD5 | 890a2403f19feebf6b26f70c68f916a3 |
|
BLAKE2b-256 | a4eaf9b630e9698b65d76bda179b11248f40fb9a2b55b85ecde742e7d75840be |
Hashes for tiledbsoma-1.7.0-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bff44cbb63a97e93eac43261fbabe2a7f91b12c53848cdf4f21ad87de15c5db |
|
MD5 | d40d4a39510cb5f1878a16135cb7b4cb |
|
BLAKE2b-256 | cee802d7f6a1b50775e4f18d55fe9d0c6c86d7a4e77449ff196356477907e327 |
Hashes for tiledbsoma-1.7.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 354fd47c1a57bd9dc69de8d49db0859a425f5b631b699b85f39905020d031ca6 |
|
MD5 | 7eed0e41a62731e60a42f329bf2d0dc6 |
|
BLAKE2b-256 | 69ca3b83069943fdc5e85e2739498f57d4aeb36efd338830e0955c18494292d9 |
Hashes for tiledbsoma-1.7.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 465e0eea6d852eb0d68cfd2c570ac7362846dda75ce90fc806f13d4e78ec5e2d |
|
MD5 | 537a6ae03eb26f5ca54b5f7075c34a5f |
|
BLAKE2b-256 | bb7aa5cf01b23253a591ca8020684467fdc17b2df05b1c44c09c02eec5a34bb9 |
Hashes for tiledbsoma-1.7.0-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3a9cb783b37ac647a3b341bc8da0ef48f1b6f511d59bd2cebba9cd4a3e1604c |
|
MD5 | 8fb1efc5b43b669d249432ba69069c2a |
|
BLAKE2b-256 | 56582644ecbe3a1c5a011f9fc389e4fd1c62ddeb93c218c51e59174e5bdc827a |
Hashes for tiledbsoma-1.7.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c476045c9b5ac8f9f450dcf8cec7b1c444da838182d00ec7190f5e41dc6137e |
|
MD5 | 16c0783406654536eac2c9000bfe68f7 |
|
BLAKE2b-256 | a243cf3c80acd85174a8f6544d168f3eb44e90e140d9cc1a361253223a9ac6a2 |
Hashes for tiledbsoma-1.7.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32263472374f27f8e649d4f6985eb434c6b23c2a7de15d751d4ba082ef86e444 |
|
MD5 | d10a3a30204ffa5aed013bc555f481df |
|
BLAKE2b-256 | 65fa8810e614bec5167469e354c9a623a8e0a840f0bb84020222f1e8cfa1ad47 |
Hashes for tiledbsoma-1.7.0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ccdaf49b2c28e8aaf44339a084e1930f09fd9adaf88b0f108895795f6961e6b |
|
MD5 | f22d139f4a6b6eead91d4b720f63bf66 |
|
BLAKE2b-256 | 42fd77691c11307afa231f1a4c2a780aab4a3a4f1a78758253c4820f36ac9105 |
Hashes for tiledbsoma-1.7.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3db5c525f2854400701d6672a3c594c815184d36bd41d26740a33e75e8d5a273 |
|
MD5 | fb81fe0e67ccfda6c54834cc9e2a3309 |
|
BLAKE2b-256 | 13e43ffb51c70d0920ead1204b13ee776e2934bfddc15ab11e333d605fc485d2 |
Hashes for tiledbsoma-1.7.0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 44c0e55348aef18114dc9022df90ddc8b1b42e0c2c44a81e41e0403fc62563c2 |
|
MD5 | d3a9acc2c4fc86271719188d282cfae3 |
|
BLAKE2b-256 | d08a8b01fd0033e68b8440fe149ab6f2a3ec4232a637b861050aaf7e0bdd2185 |