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.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6d15da5c567e60051cb754bdce4cfe43d2efc3dad71ce501e861c0a01d34872 |
|
MD5 | 034cc2e1a4531e6d846d3c591d792cc5 |
|
BLAKE2b-256 | de3d2a05de367979750457ce9e84fb4fa132e5fa62bf4aa1824084175386ea50 |
Hashes for tiledbsoma-1.5.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e21db3a1ef72e55e24f7282e15592e36a7bd7ca7a81b2ce1ebfc094a7a8b9fb |
|
MD5 | ec89515c04111672b421fcee0f6eb900 |
|
BLAKE2b-256 | 66d060f62c82099b120a77888238e129d1ca41b4964c92a2a042a90350d5d4fa |
Hashes for tiledbsoma-1.5.1-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd9de215de768e2e3897ca0c20ee77458bea4d98a03b82ed975a7c41134479e9 |
|
MD5 | 42a2dbcb02fa4efcc6918f69c2b14963 |
|
BLAKE2b-256 | 4274f7fc5692cf148b1777d4a0c4af011d3fcb83d7f2b5ebf493ec4a49969ff5 |
Hashes for tiledbsoma-1.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 588347435c31d6e5bd7663454e6765299788d9310914cdcaf53897148778081b |
|
MD5 | da0e3836d1117f144a68246ff401d314 |
|
BLAKE2b-256 | 6e2b22cbf22a6e24d1b876ddea3bae6ef730ce97a6c38ddf017b6040436f7594 |
Hashes for tiledbsoma-1.5.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6546e9c06dc9dfee698d8e6e71ec573a16b4b22403835c197323d6e0fd1015f |
|
MD5 | c03325cadc185ba60ccf32a255045ff3 |
|
BLAKE2b-256 | b0588cf75fb87149d3c5a92801898577ec7da0baf9292e621f1351ec63c9ed50 |
Hashes for tiledbsoma-1.5.1-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95383307e8be9261928f96e4db282bf54613fd590b998bab82191bc2d0dadb25 |
|
MD5 | eb4312824b56af377e5f889f27317ba1 |
|
BLAKE2b-256 | 7ad41691ea7717ed29b3f2e384d11400ea873dbd1a0cbf19f0f496829568fc7e |
Hashes for tiledbsoma-1.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f92231fef2833cef334dbecf6ca23e38fe08a1ba10bf6be1032ea8f1a1af7ed8 |
|
MD5 | b4656aff9a048a6c0be1fe089a0e5ee5 |
|
BLAKE2b-256 | e5b4cc74c33367d6f9fb96de1147aa5d54a7741e53a28a92516414dd2ce4f8f3 |
Hashes for tiledbsoma-1.5.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6147cee59f0655e4a38cf0e5a26b900513b4897bb59ae89e2c99708c6dbd49bb |
|
MD5 | d6f47b69e0bfd2cfefe040c144cf7e6d |
|
BLAKE2b-256 | 1683c91e9a30bfcf7c7b31690dd88aa937c61e914dd1f71207b481359f902d95 |
Hashes for tiledbsoma-1.5.1-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9881694a5ae5bdeb9d57f225dc6e1c09efa423aee9be5bc80b0a3f770f97e22d |
|
MD5 | 4ce96fc38e4e21dba4be3408c51ed6ac |
|
BLAKE2b-256 | 81808a29f4bac79de6a5f2c6d440939f1e185a9e9e366dd0d872e06bba01e131 |
Hashes for tiledbsoma-1.5.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f3d1dff1f2047191853c4d3df8073b857f42400a3ca0dcec9439344077a27b49 |
|
MD5 | bbdfcc82815fd312c6c446e71ba3d66e |
|
BLAKE2b-256 | c00fdf065e3881430d8cb223a49455be340d005fe32745c0b9dbe7d44defec59 |
Hashes for tiledbsoma-1.5.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d935d4d4a7e99dabd93d8df66d4e59650ca3be23dc86b49eeaf8146ce8429ba |
|
MD5 | e9176fd9cbca913ed04402c773dc50d9 |
|
BLAKE2b-256 | 98866f48680c264f9bd22359993126d7f79c8bda4913cb4a370ee7cbcd376e1c |
Hashes for tiledbsoma-1.5.1-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 318626179a7a13e66d9cf95a4dc20f78f4fbe161d48fdf8b16909b1a1c73b6bd |
|
MD5 | 15bfe68e7df6135a429c3072940534f5 |
|
BLAKE2b-256 | 1c08e6709e8dca60f988599dace0c1ff3c755925c223d81ec4302df1a01e5662 |
Hashes for tiledbsoma-1.5.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25dafa819bff3a04554e2a679cab216627c858cf6b2076d15406e5c6591851ff |
|
MD5 | e400cf2a69a687c4ee69b12cf91b1f28 |
|
BLAKE2b-256 | c2b7b5f60fcd23fc1480275a8cb73899a4ed4911e76e9ad6685ede6679646095 |
Hashes for tiledbsoma-1.5.1-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c1d8f21f693fc5924b01222d59a1c579f1454fd19213feac4a410d17054acf2c |
|
MD5 | 1d0e0c33fe044dc057f2f429dc431eb6 |
|
BLAKE2b-256 | 8a48969b3f6ba02c227c9b5ecc1f540d78d7148085f2ef08a372ae6d77bd747c |