Skip to main content

Python API for efficient storage and retrieval of single-cell data using TileDB

Reason this release was yanked:

Broken release; 1.14.1 upcoming

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

In case of illegal instruction errors when running on older architectures --- e.g. Opteron, non-AVX2 --- the issue is that the pre-compiled binaries available at Conda or PyPI aren't targeted for all processor variants over time. You can install from source, as shown below.

To see if this is the issue, on Linux:

grep avx2 /proc/cpuinfo

If this comes up empty for your system, you'll definitely need to build from source to run TileDB-SOMA on that system.

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 then cd 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 variables TILEDB_PATH and TILEDBSOMA_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


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.14.0.tar.gz (454.5 kB view details)

Uploaded Source

Built Distributions

tiledbsoma-1.14.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

tiledbsoma-1.14.0-cp311-cp311-macosx_11_0_x86_64.whl (25.9 MB view details)

Uploaded CPython 3.11 macOS 11.0+ x86-64

tiledbsoma-1.14.0-cp311-cp311-macosx_11_0_arm64.whl (23.0 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

tiledbsoma-1.14.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

tiledbsoma-1.14.0-cp310-cp310-macosx_11_0_x86_64.whl (25.9 MB view details)

Uploaded CPython 3.10 macOS 11.0+ x86-64

tiledbsoma-1.14.0-cp310-cp310-macosx_11_0_arm64.whl (23.0 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

tiledbsoma-1.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

tiledbsoma-1.14.0-cp39-cp39-macosx_11_0_x86_64.whl (25.9 MB view details)

Uploaded CPython 3.9 macOS 11.0+ x86-64

tiledbsoma-1.14.0-cp39-cp39-macosx_11_0_arm64.whl (23.0 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

tiledbsoma-1.14.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

tiledbsoma-1.14.0-cp38-cp38-macosx_11_0_x86_64.whl (25.9 MB view details)

Uploaded CPython 3.8 macOS 11.0+ x86-64

tiledbsoma-1.14.0-cp38-cp38-macosx_11_0_arm64.whl (23.0 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

File details

Details for the file tiledbsoma-1.14.0.tar.gz.

File metadata

  • Download URL: tiledbsoma-1.14.0.tar.gz
  • Upload date:
  • Size: 454.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for tiledbsoma-1.14.0.tar.gz
Algorithm Hash digest
SHA256 fa3ecfe0d9b80e32fc260b7fc1d85fe632a7c8071f6dcba2fc9b90ba8925fc53
MD5 aa3448acf46b05c0d70303c5c0ee441f
BLAKE2b-256 527ad10774e4d75f614b5fc2cee6725b5a1b97df6f07079a578ca812ce760554

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5c74b9774da0eafb9c27d741be0ee6333b8b33ee5aeadc5f4be98f62e7919366
MD5 565332db786ed281d5d7abef6e9ca25b
BLAKE2b-256 e98e7747cf6ddbbb8f620f774d76581ebd279d77735cbcee9521bf225c7da8e4

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 455578c4f0ea552c9aed536de3259fb02989e6b1b840ae8748dfcaf7ca0920b6
MD5 41645e57fa6ef12752809d97fc00b2e8
BLAKE2b-256 ea5b69c9b6badaace872928e04ecdd3ce8beee44979452574162d4c92c24a66d

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d7308d9d89f378c365db98ca4db8510b2aee69003cde4e4e83095857f2317da5
MD5 0bd1efb9e80ff75505f925b6ac19ed7e
BLAKE2b-256 bdfb3927fa463d23bee8a88fef4c946a93b40e3e84ac46ceed42bbfd5532ed2f

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 85ecaf8a6e1cba2d04154426b36921ecd3d9c055568c885696ed995659108857
MD5 02d4f8a807de858e331bbe3a2eeeb9ac
BLAKE2b-256 c78dc19b0bdaccd40ff481b882fd1c352c7d90a6418527085fb5a277b8c449db

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp310-cp310-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 1bb5b638180e69c3ee03b9e5058f40b32b3d6e7abb2d1a4f834a04c2918ea58d
MD5 57e3360cf55a5e4b36fd048965ef299b
BLAKE2b-256 561fa948c130ad01540ab308d3ff2512704977748c8b78bda2c979abb7ca130b

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 82fae63497bd3ee21a3a363334cf3fd4a1cd87e4a1b8c584d6099792b169d236
MD5 a460507d87f1ca93895a842d9f95ce00
BLAKE2b-256 e6e71d55b3b68ad800d9d4bcfaeb511a2e2cbf328246d90b3cb9d019aa72fcd5

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1032cbe9bcbbda40d275405c66680f9d24fc8219c525c1730d66a7b90964f57f
MD5 613344184b4368e6998a8b3d5167fc64
BLAKE2b-256 40386fea70e4e5195082a76eb9a73c28a5639c89cf2d6e09a52f55312eb9774c

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp39-cp39-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp39-cp39-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 90d45dfdca593f663fdebe58b4a26cbcab063f77286be95edab0c3c8f6418c81
MD5 2a6a97f9294492f51abe38a3366a91ae
BLAKE2b-256 603c1be410c5772f7adbb19abc197bde5141c18c342d50f94a6654348821c284

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f47df9998ab835cc279c4137ad71f04a13f5ee906823c27a8c91e3e4804ebb35
MD5 cda6cdd1e418181157dea141040f442d
BLAKE2b-256 ca96f84e528691130fd231c24aeb9d784a455e2831caf60461bc978197fd6b8e

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6d5f652b986070ed1bae54941492f872481c7da23f076f27a34596f939eff5c7
MD5 5e5a8c02651960975cc1c17ccb74cec2
BLAKE2b-256 4be730c8cd941b3c112fb0daf1ba749f9d1bfc8a1d15caff8f00d3539def6edf

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp38-cp38-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp38-cp38-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 591d71e9090215b12593cd0112c408d78f0798d25d4e0dc0444d10728ffefa8a
MD5 365fd134f90e5d609ec5bfcf181f5b3d
BLAKE2b-256 42079ca2fc1b044b0493dddf8fa3a4e55ba74f03c6554a9b25b24d3423808363

See more details on using hashes here.

File details

Details for the file tiledbsoma-1.14.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tiledbsoma-1.14.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 74446afd98e4ea6e476c3062f64d11054e0e338980038d0a9240e37bb7c40476
MD5 ee39186edfc6dcf76c8c802e1995672a
BLAKE2b-256 0bb2f10973af6d3b384d69af216af134eaa36f190e3ebe4b2dd7c90346b60c3c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page