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
Using pip
This code is hosted at PyPI, so you can install using pip
:
$ python -m pip install tiledbsoma
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
tiledbsoma-1.2.2.tar.gz
(146.5 kB
view hashes)
Built Distributions
Close
Hashes for tiledbsoma-1.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a0e96fb102015f570ab3ae48e97042440bd9820cc3c7d2547c81c6317c31dde7 |
|
MD5 | 60f407274f98d8bb06e42df7c238ccee |
|
BLAKE2b-256 | 0b829411482b050927927ae602ddb2a62746f9ce7305ef40443f34515fd742d4 |
Close
Hashes for tiledbsoma-1.2.2-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40228934f5374fdbc75e325f007a0488c84d874f4d9d89ca1f361cd30673e2ea |
|
MD5 | c7e2261a8ea505dfdf65bf5308721bc2 |
|
BLAKE2b-256 | c01554f16844426c0544b85e728012804be9c44fe3948ad5c623f8c4f2fdd943 |
Close
Hashes for tiledbsoma-1.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c10f84a523e63dd1d0c7afc88aaf8a03399464e84fecfff553b234a1184cca15 |
|
MD5 | bb752aeb57b24c4fd4f44d9d18c623aa |
|
BLAKE2b-256 | 87b9a315feb9fea94e5e79c5b3d688c48f205be06d8c225f68025fafefa1cb22 |
Close
Hashes for tiledbsoma-1.2.2-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7292473addd7e4ae8a1c11f6cc7628c8d47e92c692c599396ccc78f213a2dc03 |
|
MD5 | 23da13b52856a7f388d0a651e54802f1 |
|
BLAKE2b-256 | a513c4587652d73ddbd5e0cc0260e30fe7b2a1252d33b253317156f7f85d43b1 |
Close
Hashes for tiledbsoma-1.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dbac1ae68af34e476f4ad70f2020af1810760a3dce2ba2a3c41c9d75da996d66 |
|
MD5 | d197c1515a9c47fabd5593c0aaddf4d2 |
|
BLAKE2b-256 | de181a23e5c89fc43357f6f4414b53500b963a1537ec0e8cf5dec172ccb80fb6 |
Close
Hashes for tiledbsoma-1.2.2-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a1bf0493ee600ce29f0a0475c35deddb82810d7029f743af2075da2ad76e635 |
|
MD5 | b4251a9803c77569f32f5957d0b2909a |
|
BLAKE2b-256 | 80ee7901f73d8987fed214d78b4caa21f9f5ea9d6544411da819371192ebb5af |
Close
Hashes for tiledbsoma-1.2.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 522b7163513b5aa24fa00fc763d748d7a8661fa4b15e93f156deacd223af1cdb |
|
MD5 | b8a42e0c80d2539a6e2f9c18204e29e3 |
|
BLAKE2b-256 | a57bf841159bab781b6a51feb765ac0cc18c65a71c0a8fdc6f3a24b40c58ec1c |
Close
Hashes for tiledbsoma-1.2.2-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 503375e8b46cc011a8a0920af72f592f2d3f396d6ac0a7216596c98a7f3f880e |
|
MD5 | a4ea8f9435bab646b5f387f6ab648b2d |
|
BLAKE2b-256 | f9678b36af3dae51d454fe1fa724c92db6205c3748966b872b5339796eb1a035 |
Close
Hashes for tiledbsoma-1.2.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c2b60cb5f999a55e83373561b44bf260440f54abf02fa80d2df750bfb6bb394 |
|
MD5 | 2ff05f5a2b8fb0f6f6cb39821e2505ca |
|
BLAKE2b-256 | d1826f1e41c258d00c9bd99b88891e85fab04ee06e1b9dbe785722bf157f0df1 |
Close
Hashes for tiledbsoma-1.2.2-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7b616a27eb2747366aad89c256f51cf14b6c68504b7a5a168fdcced030fd0d3 |
|
MD5 | d440e6e7c0c59792e6353e6daac9f77b |
|
BLAKE2b-256 | acbb38fa37201f978ae30a825515c88f8f9ec57f09176a2f1ea2f47417d2e8fa |