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.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d9f0f3b35b83ce8b4247f81c212c8e29dfd4b5e7aaad5b9d893617fa5775e262 |
|
MD5 | 0414a4d3dc23a40367961fccc81b563a |
|
BLAKE2b-256 | 2c24f84b3ed078f8bd58e4d4a193f5d5dde31053374d424146563c8e4d964e1f |
Hashes for tiledbsoma-1.5.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 48f5baed22295b160248fcf4776f4da560f6f77d0b470da307c6209dfcb651b2 |
|
MD5 | 701628ede0153951cc6098c05cae7e73 |
|
BLAKE2b-256 | 52b27abf96e937a58f92e8b6a07d9b0b1f12fb2a0b8dba4224640e19399f5e41 |
Hashes for tiledbsoma-1.5.0-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75f801e3c9a07862fdf8cf37a66e69c7ae1652650ecc1af8d1471aa0de259fd2 |
|
MD5 | d8d7c3331844610575d368117ed4e804 |
|
BLAKE2b-256 | 7bcac3207383fb091aca5e58879a92d34e752e6c80b74a1c0d546ec669ae79ff |
Hashes for tiledbsoma-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1095354e60b9b5cd7f16b32d714334a9ac600d7d60e2c990b6f4f7f7759fcc18 |
|
MD5 | ad02b33af232060c9f5d3bd81d3d9ce1 |
|
BLAKE2b-256 | 0ba4fdc78fe454d3757ec1d1c39ea9719f8a4d04cdb162a1aca13fa7b8d090a8 |
Hashes for tiledbsoma-1.5.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a71b003c1e98bfc5fe4041b07a4733ba818a5ab6f4b4afdf3fe39892d31faff |
|
MD5 | 6eabda0cc217c20cf411e662cdadd4ad |
|
BLAKE2b-256 | ba303c96deafe22327f822fd033d0fa168d1a8f83740c20dcdf3a691d1435ca4 |
Hashes for tiledbsoma-1.5.0-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c0b65025f41aeca00061a267e2159b504c0a75279f04c940e8a8207dfc0b467e |
|
MD5 | 9ecefd89adae7af2242d1e7253cfefad |
|
BLAKE2b-256 | d13469d6de54facf11ba4eb4312262ad3643ab81685734ac0d67151cd61503a2 |
Hashes for tiledbsoma-1.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8874d6b99829d2a5cef3d6ccb405ff9cbc5e27290662df575dcab1990a91f278 |
|
MD5 | 1d2c60537f7cad5e792810d1ebb31c45 |
|
BLAKE2b-256 | bcfe43f10dbc16fb3a146a70f5675666ec620ee4bcca8007927ff3e38af21cdd |
Hashes for tiledbsoma-1.5.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6aac00ab63c24d29821d601a1c22369202202cb876f1fa4f04a74f2c782afb7c |
|
MD5 | 51a1b64a84a907be67a12ac790bad0d9 |
|
BLAKE2b-256 | 148ab70af9418ce0cd25cb30dd1cbf1df73b68e561b744ed6353dbf83fd1d95e |
Hashes for tiledbsoma-1.5.0-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3bbb1634e4a1d437234b4330dad26030e23bb60b3967e2cb12b51ab82b662deb |
|
MD5 | 277d91ed0f390aec7463b54c7217f93c |
|
BLAKE2b-256 | 3aef455050a7d83407399a604bb291291dc6243dc7a1c67439e68674d005fb15 |
Hashes for tiledbsoma-1.5.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 721c1893067d81ac10fe84b850009a6fdcce11d0ee1bf2c320813d85b2598c80 |
|
MD5 | f2b0ea2d84f5e998b25ac69e66276fba |
|
BLAKE2b-256 | 9956ce093962af960449067dcb4b53e2ed2b2d4a003762ac432ddc15d44f6184 |
Hashes for tiledbsoma-1.5.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 016d5c1877b4f141b7543d92c8749acefb12b9e2d0dd3d2d94b270ba77236bce |
|
MD5 | 712f6da3bb3a18f1b8fea7cb65dabe38 |
|
BLAKE2b-256 | 997f6460b81898c110ca97190b66ad7eefbb5b95d00d5e0c2215adc0c831867b |
Hashes for tiledbsoma-1.5.0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40aeeab47ade6c285d01cbdb244945b032cf237d090dbd299451f2d452807467 |
|
MD5 | 65f86b8ae3f38b7d645a03c85629d85a |
|
BLAKE2b-256 | 2fe362f99dc12ce6aeaf9046057174f0cb28879ad85fd259e452ec08396a2fd1 |
Hashes for tiledbsoma-1.5.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33ae4bd4969a13bc3058fd66519b17f600164a07e3d6d2a42a43d5e890e5eac1 |
|
MD5 | 1c8e83fa2dd1592cd9b439dbb6e41ca4 |
|
BLAKE2b-256 | 1290250bef0ca710cbd146f11c42c32852c52234a48906b96b0c34de9559ed4a |
Hashes for tiledbsoma-1.5.0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 405061c645bf473e6a93cb17bfb0b73245230d17bbeac0a2e81a50cba1dfbfd0 |
|
MD5 | 34dcce612c7c21fe8cff8622aaf8bac7 |
|
BLAKE2b-256 | 3efa74474c73d7db2b84f28f0380a513f760f587ee0ca4970fea16aed34557f4 |