Skip to main content

A Python package to model single-cell data using Hopfield networks

Project description

HopfieldModel

Author: Ashish Phal

BIOEN537: Computational Systems Biology. University of Washington, Seattle.

A Python package designed to model single-cell data using Hopfield networks, enabling energy-based analysis of cellular transitions.

License: MIT
Current version: 1.0.0
Last updated: 2024-12-10

Background

Understanding cellular differentiation and transitions is crucial in developmental biology and regenerative medicine. Hopfield networks provide a framework for modeling these processes by representing gene expression states as memory patterns and computing energy landscapes that describe transitions between cell states.

The HopfieldModel package facilitates these analyses with tools to normalize gene expression data, select highly variable genes, compute cell-specific Hopfield energy, and visualize cellular transitions. The package is intended for researchers and students working with single-cell RNA sequencing data, offering a streamlined and accessible approach to study cell states and transitions.


Installation

Package Dependencies

This package requires Python 3.7 or higher and the following Python packages:

  • numpy: Numerical computing
  • matplotlib: Data visualization
  • scikit-learn: Machine learning and PCA analysis
  • scanpy: Single-cell analysis
  • seaborn: Statistical data visualization
  • scipy: Scientific computing

These dependencies will be automatically installed when you install the package using pip.

Installing the Package

To install the package, run the following command:

pip install HopfieldModel

Example Visualizations

1. Transition Energy Plot

This plot shows the transition of cells between two specified types along PC1, with their Hopfield energy.

Transition Energy Plot


2. PCA Visualization

Cells are projected into PCA space, with each point colored by its Hopfield energy. Different colors represent distinct cell types.

PCA Plot


3. Gene Transition Matrix

This heatmap displays the gene state changes between two cell types, clustered hierarchically. The clustering highlights key genes involved in the transition.

Gene Transition Matrix


4. Hopfield Energy Boxplot

This boxplot shows the distribution of Hopfield energy across different cell types, enabling a comparison of differentiation potency.

Energy Boxplot

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

hopfieldmodel-1.0.1.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

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

HopfieldModel-1.0.1-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file hopfieldmodel-1.0.1.tar.gz.

File metadata

  • Download URL: hopfieldmodel-1.0.1.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.1

File hashes

Hashes for hopfieldmodel-1.0.1.tar.gz
Algorithm Hash digest
SHA256 bfdf4fa27556343e08c7a6aed03224acaef20f243f4f291b9441e31815603bb2
MD5 ff7d17e66edce758de88e54520a077ce
BLAKE2b-256 9e9d0dcd523bc3d6cb02a3eba80735a1c1fa871778cc69043955200e3ac41e55

See more details on using hashes here.

File details

Details for the file HopfieldModel-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: HopfieldModel-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.1

File hashes

Hashes for HopfieldModel-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9676bdd47ea1defd8b947dde6f792114fb96e828a57208ccc328639793dc2ccb
MD5 8947c91852980c65e0d763c173405349
BLAKE2b-256 63e23db9ce468a7fc4020ecfc033e2fcfd35f9fc19a6ee141a84c7e29752446b

See more details on using hashes here.

Supported by

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