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.5.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c70fc1ac52c8d2ddf2318ca3ae1f401d3d098103e7a6ffddf62f36c566418f76 |
|
MD5 | e6c05a375e316ee31246ec163dc630c1 |
|
BLAKE2b-256 | 520160c659f47c0e051e5f31039e221488edccc7f560ad1ce951fbfb79650498 |
Hashes for tiledbsoma-1.5.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef92fae3657f7ccd097eac0efecd0636b15d15e793825c3940c0ce5c7d547e02 |
|
MD5 | 465be3b9650f83190296fb6c6912287b |
|
BLAKE2b-256 | e728e525968f7bc84876cdc56db4db3c8afdc9976e1dc5da940de4a34a9086fe |
Hashes for tiledbsoma-1.5.3-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9caf79c73df770455a2d9089372d90374afd9dca9d48c50eee20cb98c7705ea3 |
|
MD5 | 428d53b5b39ceba87f36e8a8cc45ba73 |
|
BLAKE2b-256 | 00ccac3f010f26970afd7d04e01121880f50adf56fa22ca8883e241397ec27e4 |
Hashes for tiledbsoma-1.5.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1eefc6040f68930c56010476e0f7d90cf8f2bbb54e4d4450eaec40c1e2091ab4 |
|
MD5 | ed0066a9bbff39aa5d339539f333588c |
|
BLAKE2b-256 | 76fa75ef031d1be4e7a8864ab8b20364f00ad000783ba44ed93d3744268b5412 |
Hashes for tiledbsoma-1.5.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1e218c34b0a25698b1bcef1734b026d4dc8162d263420ba670cf05a26fbe652 |
|
MD5 | 21b5ac9b22252a1dad1b8571d24c4ffc |
|
BLAKE2b-256 | 633ffaee92339d380e7503322161a9893f915149e66e956aa671d94d31b75573 |
Hashes for tiledbsoma-1.5.3-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b78cd05eecabd25490edf181d5c240939273b57512a3bef73846b0307bbe63b4 |
|
MD5 | b87b9f76e09656ba5dacd777ce9ab99b |
|
BLAKE2b-256 | 84aafb97161c030186efff07e28e1f0a25aacbac9de3de8c08f3c9c2507af59f |
Hashes for tiledbsoma-1.5.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb85da550755138d449a139cd41d7c2710e32170d3d7e8b97cce4c9257c6332a |
|
MD5 | 08827da94e45d267e8b22afb44bc1f57 |
|
BLAKE2b-256 | 79bc2cc42a9ade30494cc7cfe13a732f903baf94c125d8a871b48fe6f6e1bc5a |
Hashes for tiledbsoma-1.5.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08cf07e242e223172be0011fd46b662d21ab268c811d30b3c826e79d696942a5 |
|
MD5 | 190af832d29f22127e33e2516bfb5726 |
|
BLAKE2b-256 | eca437540a7a720b5ea7b3922d6d99b5086d4ae36dbba3572ef8c39fb280c148 |
Hashes for tiledbsoma-1.5.3-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c584bd10c7be35df9d56b2808bd1aa7127c9fe21e0d699c04d73e0676eef7e0 |
|
MD5 | 6a55cb16a8d2d7aebcb1bb28abee33ca |
|
BLAKE2b-256 | d309541abeb7eb86378cf2a6f25f37e54584d82b485ae8add679542d165f2fad |
Hashes for tiledbsoma-1.5.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | df8d41154f845ce4fb15b6c14c77ff614f4ba94be0d1c6b2272088cd033b180b |
|
MD5 | 77710cf0f723000e30c67c35d85b94f2 |
|
BLAKE2b-256 | 7dc80d3788be5a0f1f5aeeb4c4724782eceb086adaf98f5fff7d4300671f548c |
Hashes for tiledbsoma-1.5.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 74b4075f2594195c379cecc69ac95754d13c5165cd8abc3664c757078e773f19 |
|
MD5 | ee9fb0bc5786816aea5b7b4c0c51f547 |
|
BLAKE2b-256 | f1a190cf0afbaf91de4c05f74eab8918cb8dc61d4f23791e872db6bdf8285ff7 |
Hashes for tiledbsoma-1.5.3-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40b45b3f25f65bb78ddb4a450c6ae892bf5803a5b3fb1ce35a28bb54d5004ffc |
|
MD5 | 041d143cba3ebf90dcff8ed459bee30d |
|
BLAKE2b-256 | 83f63c6b1207d7d34f7479022c7adf50ed510bfc96d964acbade731ab66a6bbb |
Hashes for tiledbsoma-1.5.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fb29a0ee8a4c49dcc2d532fa6ed8b9908c2c399ae921ec7e64cc035aeb54017 |
|
MD5 | d745933a9600c1e2c29d1a744e744849 |
|
BLAKE2b-256 | a849e2a2be6f0d03fd3dc5c7742a20732aa69a56a6c0bb985f7aa53aff680893 |
Hashes for tiledbsoma-1.5.3-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f97f2778d4dfe2d225b47836dd84d3efe735098309196ebc3f44693924b3aae4 |
|
MD5 | d5ee252d1de17d76a31840a236cc66d5 |
|
BLAKE2b-256 | ad65b88e409047fd33eb5fb7c90154bcbd3b016e985646932e6ff47911398986 |