HopfieldModel


NameHopfieldModel JSON
Version 1.0.1 PyPI version JSON
download
home_pageNone
SummaryA Python package to model single-cell data using Hopfield networks
upload_time2024-12-11 01:22:28
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseMIT
keywords hopfield network single-cell bioinformatics
VCS
bugtrack_url
requirements numpy matplotlib scikit-learn scanpy seaborn scipy
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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:

```bash
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](docs/trajectory.png)

---

### 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](docs/energy_pca.png)

---

### 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](docs/gene_matrix.png)

---

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

![Energy Boxplot](docs/boxplot.png)



            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "HopfieldModel",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "hopfield, network, single-cell, bioinformatics",
    "author": null,
    "author_email": "Ashish Phal <aphal@uw.edu>",
    "download_url": "https://files.pythonhosted.org/packages/9e/9d/0dcd523bc3d6cb02a3eba80735a1c1fa871778cc69043955200e3ac41e55/hopfieldmodel-1.0.1.tar.gz",
    "platform": null,
    "description": "# HopfieldModel\n\n**Author**: Ashish Phal\n\n**BIOEN537: Computational Systems Biology. University of Washington, Seattle.**\n\nA Python package designed to model single-cell data using Hopfield networks, enabling energy-based analysis of cellular transitions.\n\n**License**: MIT  \n**Current version**: 1.0.0  \n**Last updated**: 2024-12-10  \n\n## Background\n\nUnderstanding 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.\n\nThe `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.\n\n---\n\n## Installation\n\n### **Package Dependencies**\n\nThis package requires Python 3.7 or higher and the following Python packages:\n- `numpy`: Numerical computing\n- `matplotlib`: Data visualization\n- `scikit-learn`: Machine learning and PCA analysis\n- `scanpy`: Single-cell analysis\n- `seaborn`: Statistical data visualization\n- `scipy`: Scientific computing\n\nThese dependencies will be automatically installed when you install the package using pip.\n\n### **Installing the Package**\n\nTo install the package, run the following command:\n\n```bash\npip install HopfieldModel\n```\n\n## Example Visualizations\n\n### 1. Transition Energy Plot\nThis plot shows the transition of cells between two specified types along PC1, with their Hopfield energy.\n\n![Transition Energy Plot](docs/trajectory.png)\n\n---\n\n### 2. PCA Visualization\nCells are projected into PCA space, with each point colored by its Hopfield energy. Different colors represent distinct cell types.\n\n![PCA Plot](docs/energy_pca.png)\n\n---\n\n### 3. Gene Transition Matrix\nThis heatmap displays the gene state changes between two cell types, clustered hierarchically. The clustering highlights key genes involved in the transition.\n\n![Gene Transition Matrix](docs/gene_matrix.png)\n\n---\n\n### 4. Hopfield Energy Boxplot\nThis boxplot shows the distribution of Hopfield energy across different cell types, enabling a comparison of differentiation potency.\n\n![Energy Boxplot](docs/boxplot.png)\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Python package to model single-cell data using Hopfield networks",
    "version": "1.0.1",
    "project_urls": {
        "homepage": "https://github.com/ashx56/scHopfield"
    },
    "split_keywords": [
        "hopfield",
        " network",
        " single-cell",
        " bioinformatics"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "63e23db9ce468a7fc4020ecfc033e2fcfd35f9fc19a6ee141a84c7e29752446b",
                "md5": "8947c91852980c65e0d763c173405349",
                "sha256": "9676bdd47ea1defd8b947dde6f792114fb96e828a57208ccc328639793dc2ccb"
            },
            "downloads": -1,
            "filename": "HopfieldModel-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8947c91852980c65e0d763c173405349",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 6663,
            "upload_time": "2024-12-11T01:22:25",
            "upload_time_iso_8601": "2024-12-11T01:22:25.756713Z",
            "url": "https://files.pythonhosted.org/packages/63/e2/3db9ce468a7fc4020ecfc033e2fcfd35f9fc19a6ee141a84c7e29752446b/HopfieldModel-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9e9d0dcd523bc3d6cb02a3eba80735a1c1fa871778cc69043955200e3ac41e55",
                "md5": "ff7d17e66edce758de88e54520a077ce",
                "sha256": "bfdf4fa27556343e08c7a6aed03224acaef20f243f4f291b9441e31815603bb2"
            },
            "downloads": -1,
            "filename": "hopfieldmodel-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "ff7d17e66edce758de88e54520a077ce",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 6774,
            "upload_time": "2024-12-11T01:22:28",
            "upload_time_iso_8601": "2024-12-11T01:22:28.463758Z",
            "url": "https://files.pythonhosted.org/packages/9e/9d/0dcd523bc3d6cb02a3eba80735a1c1fa871778cc69043955200e3ac41e55/hopfieldmodel-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-11 01:22:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ashx56",
    "github_project": "scHopfield",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "numpy",
            "specs": []
        },
        {
            "name": "matplotlib",
            "specs": []
        },
        {
            "name": "scikit-learn",
            "specs": []
        },
        {
            "name": "scanpy",
            "specs": []
        },
        {
            "name": "seaborn",
            "specs": []
        },
        {
            "name": "scipy",
            "specs": []
        }
    ],
    "lcname": "hopfieldmodel"
}
        
Elapsed time: 0.61730s