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.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b46e1a9d7404ad9ee998e4f32b276c556ce800102e8c2a3bb1deeb3eaff0e1c |
|
MD5 | 41a1cf875002a331a511177cce0a0df6 |
|
BLAKE2b-256 | 5de29e7b0e39d3bfedc4b1c48f9e9a47a6d585075a3576d269f6000af2ca2302 |
Hashes for tiledbsoma-1.0.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e08eef9566ee9398167f8fdeff9f2f4be99bac166b5471dd4297f53ddcbb203e |
|
MD5 | 80a4af61f4694156d46ec8affe010d15 |
|
BLAKE2b-256 | 6bc7bcce6f903408f242f390215fcb3d7d7e547090634b07c1049e09bdb72e33 |
Hashes for tiledbsoma-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2095f60602da4bbefd3893dffede15d946677ceaa76e46589c8f851ad9654626 |
|
MD5 | 962b828d5e78eb842b60d14a5403762b |
|
BLAKE2b-256 | 0285d830ebd3d279dc893888c639cdc9c3615d5bc70e4a6cceb4cf008a8505e8 |
Hashes for tiledbsoma-1.0.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9f7cc0ee037cc59b063a15052cf4b1e155725429d635e492834b8c201f26c9e9 |
|
MD5 | 2dc3df5667f79804ebde244a1da45e83 |
|
BLAKE2b-256 | ce3a2e982c12451a5fd25761c7376d0ef86a50f6cd7e0953930a826781338985 |
Hashes for tiledbsoma-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a742a9671136335b9a56da733e2f26ecceef1d4d20aa0ae53c5ea968d54b074 |
|
MD5 | 467caee865f1378211788a453f2aea15 |
|
BLAKE2b-256 | ac3955a519f27e0748bd4c4d4d5d54ce7394fc7b7ab8b65e0333997ec93c5127 |
Hashes for tiledbsoma-1.0.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f7a3772826b3b7f53ae8cb5efe8ccf15a9da0c7f8dfdc735077c238921ff795 |
|
MD5 | afff54b1799116ce7449cd3f7334dcdd |
|
BLAKE2b-256 | e75a97374ae6025ee8b6bd7483b0cbca39f1bdc65aef62d7de9f5f7bba90bc7d |
Hashes for tiledbsoma-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 726196ff3631f2ee18fe8408f09d35e017693abb09ead0f4d3d4e59af88d3a92 |
|
MD5 | 0db8a25a69d2fb71e484089a5938c954 |
|
BLAKE2b-256 | 4b45ef63ade7772bfa559ba74c6e3eca35af2c2a5d8c93c6ed3f342e2c5545df |
Hashes for tiledbsoma-1.0.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 38bae952f7cc5624a34630ae7d566210f9a4e30f08f00f4ef698e6680aa39fe3 |
|
MD5 | 2012d28032f25d420ac41e3286a804a8 |
|
BLAKE2b-256 | 371e2823af438dff715f38b0643eee574a72ccd6d894befc6ce0b2c8899f5851 |
Hashes for tiledbsoma-1.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9fb8e89add2fcedb6f9a30164e1cc56fe82c6ee684398e8b87775feba08d4592 |
|
MD5 | 2a56d35cf656f442a18eb378c13b2b91 |
|
BLAKE2b-256 | 9cec955c1c64e61e5d6fe4cec5f5377787d7cbe1a04406c072c2881a25f2ffd3 |
Hashes for tiledbsoma-1.0.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1238add7c30e7869ce31e3d62dd512af69336c76c50e08a72753438b0466b070 |
|
MD5 | 1c04c1307e7d3d1462a5073017e4f7a0 |
|
BLAKE2b-256 | 4c0168e7215e5ef6f5704d4c1fec59af390988b7207e1c88bcea4f17f5c09bfa |