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.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 52212361fdb068972249f1a6148faacd70511342ff0ec8752f0e20ec274c27ef |
|
MD5 | 84e0bc1b5af0ef8a69ddf70471a03720 |
|
BLAKE2b-256 | cefa568ed3b52e5bb955173fade2c2a64da97c305704007d6dd127239b15a706 |
Hashes for tiledbsoma-1.2.0-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57e6ee9eb044d2611e2dd191be330df35f2de3521e3875cbee88e4ad25e5ba2c |
|
MD5 | a13cbbbde7f9692b5d4049ddb0b4b34e |
|
BLAKE2b-256 | fdb8ef636b1ada553119af6625fb4bd613843fd664c1d5b29ca28a0ec82d313e |
Hashes for tiledbsoma-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a3db5afe2218558424a647e48829d8c0a588cd8d436ed873c2ad5d6c8a168ede |
|
MD5 | eaa3968339b3239221151709ecd25e3c |
|
BLAKE2b-256 | 7316b83fd5df294e4f85620908af9ef8754959562bd2f3629d9670eb664b6752 |
Hashes for tiledbsoma-1.2.0-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ddcc8e01b9f164905bf9df1fc1959cf6b4684565f442919f075782c605c60de1 |
|
MD5 | 7b6d31488857ef8117413c1154ec9361 |
|
BLAKE2b-256 | c30df1fa65c6492983041460b9852e50d60b51e047314b92aeb9011e389d1302 |
Hashes for tiledbsoma-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2920c19401e90fd9ab9002caf0587d3c9077d2331629b1433797b2ab0cee756 |
|
MD5 | 0ceea42fa87f3556fa6c5d24ed322978 |
|
BLAKE2b-256 | 6a269340b9dc877ba5c25bffdc833e9236af4f6bcb6a3973b147dae732206020 |
Hashes for tiledbsoma-1.2.0-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aabd967905402e1e462ead5ec7dde9f5a497596e34e2315110c376aed25f16fe |
|
MD5 | 59e4bf8b32e4369a83ff35668acea17a |
|
BLAKE2b-256 | 8fcbe57bad83a5db09c3de92f95db80d324042e7811c743d5bf883e117dcdb83 |
Hashes for tiledbsoma-1.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b404eabb0927e756b31c6768dc1f2b31983152962d578317adc0a86c43961ea |
|
MD5 | 8d2fcdec6abb85db8e1c9052bcc2f28f |
|
BLAKE2b-256 | cce3322ba51b9133c194304f07480bad43397e7931f38e409702662fb4fcab54 |
Hashes for tiledbsoma-1.2.0-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | df92059f567b5345451022ab7e74763ecdbba66f6e8c709de29a1d78d5b5449c |
|
MD5 | cc434c9744db4cd73f9a2d26eb168de8 |
|
BLAKE2b-256 | f11435ca5a2b6fe793d74a68acd417ecb7bece041158e7ec2b36d47b7d6290b5 |
Hashes for tiledbsoma-1.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b8c9bbef38a43d9a791d05ed3661650ad7c67c482c299c409c2765f79d8683f |
|
MD5 | 1ec58ea7552cf5d304198fa617181ca1 |
|
BLAKE2b-256 | 4c887b6184440c3d7f884a8fef32ed130c765a9eee2b80c763149a192e6dfae5 |
Hashes for tiledbsoma-1.2.0-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6eddfce424f68b57849891497c6142c2bfce43e2e5bc8fecc964651ce916fba7 |
|
MD5 | baf5123369b3427d53d96cd78c5445fe |
|
BLAKE2b-256 | 42a0e6d15d802e2fe4fcf66d6c702e1976e976e77a81de8046eb99361a56c74e |