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.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e02613760ff9a8b4e118a77e27ac2abb76cc63df584fb97a93530c845e50e3ff |
|
MD5 | 055954ac40d430ed849e84109ed7fc50 |
|
BLAKE2b-256 | a20b455c63f15834882c043535e990e811a17ff7f86b714af4bf96c4628ab501 |
Hashes for tiledbsoma-1.7.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0235ac468a0ca99439f41a419541d668e82d99519d258378f755f14a69cea3ef |
|
MD5 | f8bf1bb0f8eb0dbc450289f13403f17c |
|
BLAKE2b-256 | 1a8c19607030ac7fbb544fc6aa4732f7161d4aab22dd05e7ea21194180fbc782 |
Hashes for tiledbsoma-1.7.2-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d332aa90d50c2250db032d4af89dc55c98be7c76920298ef02b49f40f2731120 |
|
MD5 | be907c3e3e3feb6d75d6313b40617ae1 |
|
BLAKE2b-256 | 5e54cdaeb5eb9cbc3f7193d74d9a2b51a97aa49a434be8323f491e74b6800fdb |
Hashes for tiledbsoma-1.7.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6558ddaf9f3725b8effc3ba4d85a6d5b437ae716c0ff4e5b1d07916ea92e955c |
|
MD5 | f0dff3f31a3c896383818cd31528245b |
|
BLAKE2b-256 | 412d0e3caa99dd60794da3c0c61479f3d48496cb552383e4907f455be425ccaf |
Hashes for tiledbsoma-1.7.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73deb7e526d5f9d20bfbd388304fc653690d12edee3836fed0b93bcc1cb7e87b |
|
MD5 | 6bb76828d417b746fba64f04c1a882fa |
|
BLAKE2b-256 | 5fbff191878107aaa5f3ba6e896ad7487542c2efb2f621c416be0215cb33c470 |
Hashes for tiledbsoma-1.7.2-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2bd97ddf1efeb06c1d316df477426da9aeed4a004151b5a7a6915bad082e8729 |
|
MD5 | 2bcf1dece813317d87e72555788efbe9 |
|
BLAKE2b-256 | e3a8970cc49d063606fa5f4a97a62623d1ca06aaa8b540cd3daecaee6d90e1c1 |
Hashes for tiledbsoma-1.7.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67be3d10c75e44cff069f0fb884270dd0843fdb291e9ec501bb7e7be952fe3ed |
|
MD5 | 30c9de2140585ef7a5e29629be710b9f |
|
BLAKE2b-256 | 7e76ada8dd23c9e314ca4d6a17075ce3ca70b1e42786e450cf2a9b5355680237 |
Hashes for tiledbsoma-1.7.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85728850a510e518c62f9e2464a7887f000c543d852f6ba8661f5bb2c7b18493 |
|
MD5 | f6458ee674a66dfbb3a35210f29f8227 |
|
BLAKE2b-256 | 53690abecd5b564b45dce39d2ee43cea39f71a82cf4f5c8fd807e2c742dc8edb |
Hashes for tiledbsoma-1.7.2-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c36b1ea40d8096c44a9d5b037e1ee8b2b34797a952dfed8bbc87b830bafbce6b |
|
MD5 | f7379e93261aac3f01a7264bd25dffd2 |
|
BLAKE2b-256 | cb24240c481bc51b8a246ac79f5f51503346c6a0ffadf52f9d9dcaec00c22171 |
Hashes for tiledbsoma-1.7.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea2ac98282744aa494e28e5e5864de85ea7794b3dfed1a7f567e3a5792eea0fb |
|
MD5 | 8c2ed8a5526eb1315ef44e1fbbf12078 |
|
BLAKE2b-256 | d350288fa9c0343dd3a5066e9503572e6b277dd99e47519af1628ddc23d7138e |
Hashes for tiledbsoma-1.7.2-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b9246710513cca852b0fe7cc83a145ceccc15934baf70470efcc63da63ee07c3 |
|
MD5 | 8075ad52b61729fb172bd0d518773a5a |
|
BLAKE2b-256 | f788461e5462f4e02a8e3b285be337d2842488cdd04f8d1f7e3bb8776ebb5540 |
Hashes for tiledbsoma-1.7.2-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8f22310d13ca3294a4e729522c77d6fd77d94ec9b959d876fcbb22c9a91e755 |
|
MD5 | 209398f8ae3bdbf5ddf13b7a27e33127 |
|
BLAKE2b-256 | e4db4faf05a1e012bd56c91de913ccc86a6782ddc207429fba415f8588ecf5c0 |
Hashes for tiledbsoma-1.7.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d66d48f200fcc253a2c3204a865c7c0325c9f1418404b7765ae355474ae26858 |
|
MD5 | d74fd39d0a0d8497afd2d8ac14fb873b |
|
BLAKE2b-256 | 535111a1a201d82102678ba4bde56ccab099fe5a945ad7358d444154403585f6 |
Hashes for tiledbsoma-1.7.2-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a15687bbfdda55e1c1c87bde14ac5a689062885698a78140a563d90a8526fd1d |
|
MD5 | 98bfd237317d86104d08564e06efe52f |
|
BLAKE2b-256 | f824ac1a6f6c9e647c036132315e62fa68e3c4c2b8a823f0b5e18cf748325ee6 |