Impeller is a package for spatial transcriptomics imputation using path-based graph neural networks.
Project description
Impeller
Impeller is a sophisticated package designed for imputing spatial transcriptomics data using path-based graph neural networks. It supports a variety of datasets and integrates powerful processing and machine learning techniques.
Installation
Install the Impeller package using pip with the following command:
pip install Impeller
Usage
The Impeller package simplifies the process of downloading, processing, and training models on spatial transcriptomics data. Follow the steps below to utilize the package effectively.
Download Example Data
The package supports three datasets: '10XVisium', 'Stereoseq', and 'SlideseqV2'. Begin by downloading the dataset of your choice:
from Impeller import download_example_data
# Replace '10XVisium' with 'Stereoseq' or 'SlideseqV2' to download other datasets
download_example_data('10XVisium')
Load and Process Data
Once the data is downloaded, you can load and process it for analysis:
from Impeller import load_and_process_example_data
# Ensure to specify the same dataset you downloaded
data, val_mask, test_mask, x, original_x = load_and_process_example_data('10XVisium')
Train Model
After loading and processing the data, you can initialize the model's arguments and start training:
from Impeller import create_args, train
args = create_args()
test_l1_distance, test_cosine_sim, test_rmse = train(args, data, val_mask, test_mask, x, original_x)
print(f"Final L1 distance: {test_l1_distance}, Cosine similarity: {test_cosine_sim}, RMSE: {test_rmse}.")
Only Inference
You can use Impeller to perform inference on your custom data (you'll need to provide a mask indicating which genes in which cells you want to impute). Below is a demo for inference only (replace the following adata and inference_mask with your own data):
from Impeller import load_example_data, process_inference_data
adata, _, inference_mask = load_example_data(example_dataset = '10XVisium')
data = process_inference_data(adata)
from Impeller import inference
Impeller_imputed_data = inference(args, data, inference_mask)
Naive Baseline
We also provide a simple baseline implementation using K-Nearest Neighbors (KNN):
from Impeller import SpatialKNNImputer
knn_imputer = SpatialKNNImputer(adata, n_neighbors=5)
knn_imputed_data = knn_imputer.impute(inference_mask)
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
Built Distribution
File details
Details for the file impeller-0.1.2.tar.gz
.
File metadata
- Download URL: impeller-0.1.2.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51236702e4d73383333951ff6c4031085fce7c74b4cf115e2f49bd13494dbb74 |
|
MD5 | 00abd04c4d2cdeff1d84bb3221e7edd6 |
|
BLAKE2b-256 | 784d466b5a7fbd271f4fdb65e94d8699804ad0be61df4e998b2f936196c9e803 |
File details
Details for the file impeller-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: impeller-0.1.2-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 178f56f676a1786a83a1c227b5e88068b433971baeaa60b2c452363c54079147 |
|
MD5 | 2c8a2121768d480d6dcd6efd663964ea |
|
BLAKE2b-256 | f22986aabdf17a3891a9e541ff64619926b47b5dd982f49c9d740b1af62b2e74 |