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.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b27f1530995654c3a23cce751140cca8bac86384696f74c77f9ce907085c08d8 |
|
MD5 | c963140ffe4dfd21c4ef09eb18ab79a1 |
|
BLAKE2b-256 | 8d9eaf0e91717f067eab26f3354e2254c01f171eec46bad5de8bc22d549e54dc |
Hashes for tiledbsoma-1.7.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23fd79dd7300f2588f0c3aa3e7f8b4b145afcc50aebbab6500846b05de88b51c |
|
MD5 | 8ec463622eda296ebcb8b0e84b540424 |
|
BLAKE2b-256 | 6e751a4e33a12e74972303b20a362b2cbee5097ef280537cc2246a72c39c09e8 |
Hashes for tiledbsoma-1.7.1-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb6a27dd8ba1bff8a8e2ea3b85bfabf81370859d9bc41934b56b78afacd3a8b7 |
|
MD5 | e8303519431ae55d2a60400410ebb7cd |
|
BLAKE2b-256 | ee18483f742a39c6609e5f6013efb9960940ff9498efb2aafb6282cbd27c72fe |
Hashes for tiledbsoma-1.7.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23fbfc8d3786de9bfbced801d2d1f5ceafbc6bcd64462243a52eeb5a0f6ba7ca |
|
MD5 | cc7a361bf7d73ec5b413df47aaacb1c3 |
|
BLAKE2b-256 | c07ad85dcc6f7f25edd488a6e68f08c1e234e339ddaf2eecc8d73c8a98ee00de |
Hashes for tiledbsoma-1.7.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aac9e4ddedd7564c7e147aa4186a2373328206ebec42880616888fba31ed91f9 |
|
MD5 | 42e5af2b62945440f0de3b9b1f96d886 |
|
BLAKE2b-256 | 0692bcd10eb6e534abf34d7e20d3afe57f4adac3be6d97254573a9d6103399a1 |
Hashes for tiledbsoma-1.7.1-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d6d0d49bbb4c0abab6b44de335866a2c3898c26399b9a6158c8d261817c31c3 |
|
MD5 | 2d1228fcf2b3a4fc37ffb07d553db32b |
|
BLAKE2b-256 | cb196079e88e557d17a1425d82dfa93de863af30acb0638b240e38dbfde6841e |
Hashes for tiledbsoma-1.7.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4fb8de4cc2592cc1a96ed4e235d0b28aab007f986d06ee273d106d30641e387 |
|
MD5 | 75510520b04322bcca882e43d2d972b1 |
|
BLAKE2b-256 | d4870b06918b6c8b3fcecf220922c91b888c3576dcfbc5e9b147d535086372f7 |
Hashes for tiledbsoma-1.7.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 297e6561505aab14645bf08e44f22a2ddb19c9af684161d6ded5fca10f0531b6 |
|
MD5 | a94bcd7a566223a112f46bc00bdd6056 |
|
BLAKE2b-256 | bf150ff10297b8103ccd81add04a9ae211583de0983790423b9da084adc17157 |
Hashes for tiledbsoma-1.7.1-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8458fdbf3fbb26ce86e6ced798294b1e4f662dddc5ace24a614dda3321269a1d |
|
MD5 | 2c7f48f5e209e3bd3e729b17002015f1 |
|
BLAKE2b-256 | d2f587a642a09aef3e213ccece13ccf6c42af029055f4721eff4a31842a6109e |
Hashes for tiledbsoma-1.7.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 630c2b5004c0c5afb47e82dd79e756c42ef1c1c47c7f27f0e10cbfb099ef586a |
|
MD5 | 0c2f9019cfe964bf50b77b366dd60e2d |
|
BLAKE2b-256 | daca0f6c16d07a7457bf3549ce849e538f46f2fd247fbb78d3ad8c628ec4f326 |
Hashes for tiledbsoma-1.7.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31b0c9997ef6b341a690ce712786c037d3bdb6ea5ecd5840d781627f93c8ba19 |
|
MD5 | 20c5d7820935b3845a1cbc10a8e98577 |
|
BLAKE2b-256 | 731ab6b291d2ba099bbc64dd9e21d9ffe1a242380e521c09ff39e2b7490c7165 |
Hashes for tiledbsoma-1.7.1-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f3a56476eba83cd62801757775e737af6ee46301cb949e0cde21211edd677849 |
|
MD5 | 5184ca8d040175b5ae562deaf987ff8f |
|
BLAKE2b-256 | 536dfb2a2dfe3fbc0ce3a6666dcfc0f5b6efa80f7c24de79f260306c6333dec4 |
Hashes for tiledbsoma-1.7.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb8bb2a4b5b8160a400c30d59aa8242f063fd49c5945e70c84a0e920ab4386d4 |
|
MD5 | cb1c64ab599d23b7c1123e4849c34586 |
|
BLAKE2b-256 | 5b9dd9ef128917786360181a5be21732d1948c520d2eae807f4f9137d36c37c1 |
Hashes for tiledbsoma-1.7.1-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ef6861cc8af4f113194dd6b588e4e419501fae62950dcdb702b04f34f85ba0e |
|
MD5 | b3b4abf136807923c2bd7c8e365c2b8f |
|
BLAKE2b-256 | fb4b911f52526f490f2520889db74d5136d17b914693714289a3fb125ef49e99 |