Python API for efficient storage and retrieval of single-cell data using TileDB
Project description
Overview
This is a Python implementation of the Unified Single-cell Data Model.
This branch, main
, implements the updated specfication. Please also see the main-old
branch which implements the original specification.
Installation
Using pip
This code is hosted at PyPI, so you can do
$ python -m pip install tiledbsoma
# or
$ python -m pip install --pre tiledbsoma
Without --pre
you will get version 0.1.* (the main-old
branch); with --pre
, you will get 0.5.0a* (the main
branch).
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 .
- 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.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 05dab5ef58df104e376eb80d4371910dd43818b39e7923e4cb8dd3f3e2282ac4 |
|
MD5 | 8bf73205c3dbb8763e25e13fb91807dc |
|
BLAKE2b-256 | 4d359a9fbab79bf772cb487c53dd509bc417680404ea4af799027b908679a6d5 |
Hashes for tiledbsoma-1.2.1-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4e86af6212f8ea76af8b29b02c0d9df6c7943dd273c4242b4de55509ce6229f |
|
MD5 | 05c7d78e3ba9e4e2b8613b4749e3bfff |
|
BLAKE2b-256 | 98f606cb3709341b97efb1c0fcac1adf81ad3f8be38fde50b8e71a23c9d3dd3f |
Hashes for tiledbsoma-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6377a7c489ce7fe4dd8a396914db18aeaa305abde9e08b8f470c617515648029 |
|
MD5 | cbb739a6e521364f2c951f711016a64f |
|
BLAKE2b-256 | b6b9a84261312615c37f25287d13b86f365ef39033383c29c6367ec6e5cd19de |
Hashes for tiledbsoma-1.2.1-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2a2b16fb806beabe5955138acf37248b5b45005448902f4090b77d0282cf0ebc |
|
MD5 | 5332e0322cae6b20c717ac16568ca8c2 |
|
BLAKE2b-256 | 5b45d084507f50088adfcdd8d572d2b291858e60bf752b03137ec638929e4df9 |
Hashes for tiledbsoma-1.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 645233b13c0780853b73a179c4172496a5b992c3dce17cce69870a7811f600ea |
|
MD5 | df4aba822b356e9f4aa2d530d0a85e66 |
|
BLAKE2b-256 | 2a74174a54b2301725d9ad6aa37d0c49ce6585e7d5338d0cb06bf84749400af8 |
Hashes for tiledbsoma-1.2.1-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a04d186091d93adb7a1b263389a84c50eb3300a3df5a7d429e864c2dfcc6ea81 |
|
MD5 | 26d1203d99796b9f488e3aa9455f5a8a |
|
BLAKE2b-256 | dd9472c33e1bd45bac169f79b7ce6c64d66eb4165e0068d86e85ed59b8afb4d8 |
Hashes for tiledbsoma-1.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | de565a28dfaab7cfb08ad25cc74b46b89a042008be8403091326b290462accac |
|
MD5 | ceaff0fb2844dd4211580e565bf7fa68 |
|
BLAKE2b-256 | 670fb0fec7fb7349435b642966b92e2593d1ee1d816fed73b4e40b48e84e6b45 |
Hashes for tiledbsoma-1.2.1-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85436d7cfaf68a7d2ba54e5b6caf0c7d93b1f14c200cb47b809b7dee0c710d8b |
|
MD5 | 9cc8840d5021040c6b60c28b29008420 |
|
BLAKE2b-256 | 8c168f63a6ffc14e855400f0c323cd39795248a423b48b9765352d6bc24eb016 |
Hashes for tiledbsoma-1.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7fca579bd736e41bfeae539917ee26d432769a56c5544167aa28b3910e74d50 |
|
MD5 | 3beb9b403ce345327768a34a3a97b532 |
|
BLAKE2b-256 | c60e7d1cb1cb3b2ee5a5baeffa00165a3381feb6a8123577ba66ea0942a86a46 |
Hashes for tiledbsoma-1.2.1-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f22e6725640d13359e082e4f642ae34cd0110ee39e0bfcae97d3a7bea990a5d |
|
MD5 | 2434e3072bd520f48c1da8eb3dce8f06 |
|
BLAKE2b-256 | 65900b4efdda4563c7577ee0cc57d64e594d4d6c5e2af286fc31915c36f3fda4 |