Skip to main content

CytoTable

PyPI - Version Build Status uv Manuscript DOI badge Software DOI badge

dataflow Diagram showing data flow relative to this project.

Summary

Image-based profiling often entails preparing data for analysis by transforming the outputs of image analysis tools into a consistent, analysis-ready format. CytoTable streamlines analyses by harmonizing CellProfiler (.csv or .sqlite), cytominer-database (.sqlite), DeepProfiler (.npz), or other sources such as IN Carta output data at scale. This helps biologists by lowering the barrier between image acquisition and data interpretation, enabling them to focus on biological insights rather than file formats or data wrangling.

CytoTable creates Parquet or AnnData files for both independent analysis and for input into Pycytominer. The output files (such as Parquet and AnnData file formats) have a documented data model, including referenceable schema where appropriate (for validation within Pycytominer or other image-based profiling projects).

The name for the project is inspired by:

  • Cyto: "1. (biology) cell." (Wiktionary: Cyto-)
  • Table:
    • "1. Furniture with a top surface to accommodate a variety of uses."
    • "3.1. A matrix or grid of data arranged in rows and columns."
      (Wiktionary: Table)

Installation

Install CytoTable from PyPI or from source:

# install from pypi
pip install cytotable

# install directly from source
pip install git+https://github.com/cytomining/CytoTable.git

Getting started

Check out the following resources to get started with CytoTable! We created tutorials which follow a narrative-driven approach. We also provide Jupyter notebooks for pragmatic, hands-on explanations.

We suggest image analysts begin with the tutorials and explore the example notebooks afterwards.

Resource What it covers Link
Tutorial CellProfiler SQLite or CSV to Parquet Open tutorial
Tutorial NPZ embeddings to Parquet Open tutorial
Tutorial Multi-plate merge with tablenumber Open tutorial
Example notebook CytoTable mise en place (general overview) Open notebook
Example notebook CytoTable from the cloud (cloud-based overview) Open notebook

Contributing, Development, and Testing

We test CytoTable using ubuntu-latest and macos-latest GitHub Actions runner images.

Please see contributing.md for more details on contributions, development, and testing.

Relationship to other projects

CytoTable focuses on image-based profiling data harmonization and serialization. At scale, CytoTable transforms data into file formats which can be directly integrated with:

Please let us know how you use CytoTable (we'd love to add your project to this list)!

  • Pycytominer for the bioinformatics pipeline for image-based profiling.
  • coSMicQC for quality control.
  • CytoDataFrame for interactive visualization of profiles with single cell images.

References

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cytotable-1.2.6.tar.gz (608.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cytotable-1.2.6-py3-none-any.whl (69.8 kB view details)

Uploaded Python 3

File details

Details for the file cytotable-1.2.6.tar.gz.

File metadata

  • Download URL: cytotable-1.2.6.tar.gz
  • Upload date:
  • Size: 608.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for cytotable-1.2.6.tar.gz
Algorithm Hash digest
SHA256 0a89d8248cbc9da4a5b2fb0526621c3667c9c8857540d22083bc846d04bd2786
MD5 32d93655ef087f0b065666b2d0d3852f
BLAKE2b-256 735dcecbf1fe09b2a3ab71da2035966df33800cfd3c36f5dff4a86ed46c28d39

See more details on using hashes here.

Provenance

The following attestation bundles were made for cytotable-1.2.6.tar.gz:

Publisher: publish-pypi.yml on cytomining/CytoTable

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cytotable-1.2.6-py3-none-any.whl.

File metadata

  • Download URL: cytotable-1.2.6-py3-none-any.whl
  • Upload date:
  • Size: 69.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for cytotable-1.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8b188d935f633c00aab0763234203938de9b993831e9b4e4979bef96da2a520c
MD5 11102d00dd6d8ea98b903f39043d0977
BLAKE2b-256 52d645aafc40dc5891d1f38bd994c04a58d4c099b6f1049ba3cde96f9da835e8

See more details on using hashes here.

Provenance

The following attestation bundles were made for cytotable-1.2.6-py3-none-any.whl:

Publisher: publish-pypi.yml on cytomining/CytoTable

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.2.6 This release

2 files

1.2.5

2 files

1.2.4

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

1 file

1.2.0

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.1

2 files

1.0.0

2 files

0.0.16

2 files

0.0.15

2 files

0.0.14

2 files

0.0.13

2 files

0.0.12

2 files

0.0.11

2 files

0.0.10

2 files

0.0.9

2 files

0.0.8

2 files

0.0.7

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.3

2 files

0.0.2

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page