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.6.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e22a46e2ab45d20157a4dcaf15261a32dda58e8706eea760dc24c8a596b6026b |
|
MD5 | cdd57c23515f3efeb2add8a38326eefc |
|
BLAKE2b-256 | d0731731dffe8d8617aae4caea09a340c881792a52564789e8741f9f2613ed31 |
Hashes for tiledbsoma-1.6.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | acf808665f2aaabff6f03c321149d7be3b1c90768df2f317292d2ac359a4a559 |
|
MD5 | 89196679d7fe2ddc91e923d7fb906dac |
|
BLAKE2b-256 | c1578baa9fb292b45805f0d775a7567d16601cd830b32d73748962ed374f1cad |
Hashes for tiledbsoma-1.6.1-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b1e078b860c0901531e322f5de313b262b8f8e20d36e5cef7f03240f912340d |
|
MD5 | a2ef56924952d4a7254d9e5a3e7a7ca0 |
|
BLAKE2b-256 | e887127ee70955d00f26c10bee33f71817c71d9e80600cd18d067b6b3ee478c0 |
Hashes for tiledbsoma-1.6.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66b7c1fca1e5100292f1bb0cd78014c9981c5d2c816864c2b2a3a643dbafcd70 |
|
MD5 | 7491a9b1233e2060c98f63afd29b1008 |
|
BLAKE2b-256 | 6cdb5e51e5bcb3bc7ec31a0858211c7ef1b564fe8000ecea720ca3edcdbbdc79 |
Hashes for tiledbsoma-1.6.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69d7136f82269d447d99d577d9a10e2705fe3817a41b79db0b02a73b6d3b03be |
|
MD5 | 6eac9879d2cb35e56eadd17e9a29f2cf |
|
BLAKE2b-256 | 1afba32236031a8a873382e7c83efffd8062cca3fbdb50ff576213ef0bff9d35 |
Hashes for tiledbsoma-1.6.1-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a820230a9e73d469b05e195f4c60efe9c26deac5a0f7d4cbe78cd444b7b8d561 |
|
MD5 | 059e5ec58e02f282a1781161e012449a |
|
BLAKE2b-256 | 211ae0420b212a2e07e890816c71ca32e7ac8d7051e8788cf15a567e4cd53e2b |
Hashes for tiledbsoma-1.6.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3109c54182f462d239f06df1eccf741e8db5780f763488fe25197c50a42642b |
|
MD5 | 097a576e9269a11ae152630b5fe6761e |
|
BLAKE2b-256 | f4fa19f36b911a182463fb7a56caeac049e8c13c0a583215419b13a723d97aba |
Hashes for tiledbsoma-1.6.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5aeda03d3fb7f5575e72e615c12378f35ab04d0c87945050f85b18a7e983c05 |
|
MD5 | 28379a8d57c024b81186a115d5d3e458 |
|
BLAKE2b-256 | c537b196f580ed420d168dcd5b6d62bf4e7c8b2d5698e54aab44b58dad181740 |
Hashes for tiledbsoma-1.6.1-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6310bec872161eeff371b91e47ded1097f26287bda3f6a0ee09c2fbf20aa9cb |
|
MD5 | a14487f7be1b512ed856aa788d38ba5a |
|
BLAKE2b-256 | 3bad44f49cc4ceec4d6054e59ed403c788e5e4b409fe6aebc2cca515f914c1e9 |
Hashes for tiledbsoma-1.6.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d47d65623a6d1ee786fb001679f5e71c5d82efc699a9afc14258d2d25c4dca94 |
|
MD5 | b43597d6be7d95f87a3d83ae1314f68c |
|
BLAKE2b-256 | 8b9307284fd691b6e7ab8b879bf5c4764b084293c11cfa73f0d9fe5136dd60a8 |
Hashes for tiledbsoma-1.6.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35a05400511d31f8a776727adb84ca8035fad34b7a07961cc0829b55dd198908 |
|
MD5 | 6cdacfc4efb6eff0f97b858933bc1735 |
|
BLAKE2b-256 | eb3154cd4285941af9f6e3f850d6d13bd8daf21cb092f468b003c98555284129 |
Hashes for tiledbsoma-1.6.1-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 637b22f6315d5c717e27b8ee4f5e3581be406fdcb06951ea7afa0119a4a4f651 |
|
MD5 | fdf2c7d06136dc0d46d277d164e6de99 |
|
BLAKE2b-256 | e65c43f007b0007fc8aab11a2b89c6276337d73ecbc42cfcc7da5b08b14fa7d9 |
Hashes for tiledbsoma-1.6.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49daed8db8cf97e70049553b01b6d9a9d17beea689eb93c391828ceb5e0431d2 |
|
MD5 | 43bede48a1ecb2cad4c67dfb64514c3e |
|
BLAKE2b-256 | e44c60fb075fdbbee0af6c35db7c77898c3b533a87bbd2e244b20677caec5102 |
Hashes for tiledbsoma-1.6.1-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1238383c307bb3b8cfeb8af44e95646533822632208e853a9b3c36ae09a6a58 |
|
MD5 | 74be38701c3034756368788de7dd1afc |
|
BLAKE2b-256 | 89abc4aa6963ad7681fbd51c1ebbc2e63801e157d5bd9a197966fce728c41ef4 |