BioTuring SpatialX Connector
Project description
BioTuring SpatialX Connector
Installation
!pip install -U spatialx_connector
Import
import warnings
warnings.filterwarnings("ignore")
import os
import spatialx_connector
from spatialx_connector import SpatialXConnector
Domain and Token
DOMAIN = "DOMAIN"
TOKEN = "TOKEN"
Explore Account
connector = SpatialXConnector(domain=DOMAIN, token=TOKEN)
spatialx_connector.format_print(connector.info)
spatialx_connector.format_print(connector.groups)
spatialx_connector.format_print(connector.s3)
spatialx_connector.format_print(connector.folders)
studies = connector.list_study(
group=spatialx_connector.DefaultGroup.PERSONAL_WORKSPACE.value,
species=spatialx_connector.Species.HUMAN,
)
spatialx_connector.format_print(studies)
study_details = connector.get_study_detail(studies[0]["study_id"])
spatialx_connector.format_print(study_details)
samples = connector.list_sample(studies[0]["study_id"])
spatialx_connector.format_print(samples)
sample_details = connector.get_sample_detail(samples[0]["sample_id"])
spatialx_connector.format_print(sample_details)
Uploading
uploading_results = connector.upload_file("/s3/colab/content/xenium/experiment.xenium")
spatialx_connector.format_print(uploading_results)
uploading_results = connector.upload_big_file("/s3/colab/content/xenium/morphology_mip.ome.tif", debug_mode=True)
spatialx_connector.format_print(uploading_results)
uploading_results = connector.upload_folder("/s3/colab/content/xenium", debug_mode=True)
spatialx_connector.format_print(uploading_results)
Submission
visium_submission_information = connector.parse_data_information(
"Visium_V2_Human_Colon_Cancer_P2",
spatialx_connector.Technologies.VISIUM,
os.path.join(
connector.s3["bioturingpublic"],
"SpatialX_datasets/Human_Colon_Cancer_P2/Visium_V2_Human_Colon_Cancer_P2"
)
)
spatialx_connector.format_print(visium_submission_information)
xenium_submission_information = connector.parse_data_information(
"Xenium_V1_Human_Colon_Cancer_P2_CRC_Add_on_FFPE",
spatialx_connector.Technologies.XENIUM,
os.path.join(
connector.s3["bioturingpublic"],
"SpatialX_datasets/Human_Colon_Cancer_P2/Xenium_V1_Human_Colon_Cancer_P2_CRC_Add_on_FFPE"
)
)
spatialx_connector.format_print(xenium_submission_information)
submission_results = connector.submit(
spatialx_connector.DefaultGroup.PERSONAL_WORKSPACE.value,
spatialx_connector.Species.HUMAN,
"10xgenomics",
"Human_Colon_Cancer_P2",
visium_submission_information
)
spatialx_connector.format_print(submission_results)
xenium_submission_results = connector.add_sample_data(
submission_results["study_id"],
submission_results["sample_id"],
xenium_submission_information,
)
submission_results["sample_data"].extend(xenium_submission_results["sample_data"])
spatialx_connector.format_print(submission_results)
multiple_samples_submission_information = connector.parse_multiple_samples_information(
spatialx_connector.Technologies.COSMX_VER1,
os.path.join(
connector.s3["bioturingpublic"],
"SpatialX_datasets/COSMX_VER1"
)
)
spatialx_connector.format_print(multiple_samples_submission_information)
multiple_samples_submission_results = connector.submit_multiple_samples(
spatialx_connector.DefaultGroup.PERSONAL_WORKSPACE.value,
spatialx_connector.Species.HUMAN,
"Multiple CosMX Ver1",
multiple_samples_submission_information
)
spatialx_connector.format_print(multiple_samples_submission_results)
Analysis
data_id = submission_results["sample_data"][-1]["data_id"]
data_id
Embeddings
response = connector.analysis.embeddings.pca(data_id=data_id, title="Connector - PCA")
spatialx_connector.format_print(response)
response = connector.analysis.embeddings.scvi(data_id=data_id, title="Connector - scVI", n_top_genes=2000)
spatialx_connector.format_print(response)
embeddings = connector.analysis.list_embedding(data_id)
spatialx_connector.format_print(embeddings)
response = connector.analysis.embeddings.umap(data_id=data_id, embedding_key=embeddings[0], title="Connector - UMAP")
spatialx_connector.format_print(response)
response = connector.analysis.embeddings.tsne(data_id=data_id, embedding_key=embeddings[0], title="Connector - tSNE")
spatialx_connector.format_print(response)
Clustering
response = connector.analysis.clustering.louvain(
data_id=data_id,
embedding_key=embeddings[0],
resolution=0.1,
title="Connector - Louvain",
)
spatialx_connector.format_print(response)
response = connector.analysis.clustering.kmeans(
data_id=data_id,
embedding_key=embeddings[0],
n_clusters=5,
title="Connector - k-means",
)
spatialx_connector.format_print(response)
Prediction
embeddings = connector.analysis.list_embedding(data_id)
spatialx_connector.format_print(embeddings)
metadata = connector.analysis.list_metadata(data_id)
spatialx_connector.format_print(metadata)
response = connector.analysis.prediction.metadata_reference(
data_id=data_id,
cluster_key=metadata[0],
species=spatialx_connector.Species.HUMAN,
title="Connector - Metadata Reference",
)
spatialx_connector.format_print(response)
Differential Expression
response = connector.analysis.de.differential_expression_genes(
data_id_1=data_id,
data_id_2=data_id,
group_1_indices=[i for i in range(10000)],
group_2_indices=[i for i in range(10000, 20000)],
title="Connector - DE genes",
)
spatialx_connector.format_print(response)
Spatial Analysis
response = connector.analysis.spatial_analysis.region_segmentation(
data_id=data_id,
radius=50,
mpp=0.2125,
resolution=0.5,
species=spatialx_connector.Species.HUMAN,
title="Connector - Region Segmentation",
)
spatialx_connector.format_print(response)
Convert data from Lens
!pip install bioturing_connector
LENS_SC_HOST: str = "LENS_SC_HOST"
LENS_SC_TOKEN: str = "LENS_SC_TOKEN"
lens_sc_studies = connector.list_lens_sc_studies(
host=LENS_SC_HOST, token=LENS_SC_TOKEN,
group=spatialx_connector.DefaultGroup.PERSONAL_WORKSPACE,
species=spatialx_connector.Species.HUMAN,
)
spatialx_connector.format_print(lens_sc_studies)
# Convert a study
connector.convert_data_from_lens(lens_sc_studies[0])
LENS_BULK_HOST: str = "LENS_BULK_HOST"
LENS_BULK_TOKEN: str = "LENS_BULK_TOKEN"
lens_bulk_studies = connector.list_lens_bulk_studies(
host=LENS_BULK_HOST, token=LENS_BULK_TOKEN,
group=spatialx_connector.DefaultGroup.PERSONAL_WORKSPACE,
species=spatialx_connector.Species.HUMAN,
)
spatialx_connector.format_print(lens_bulk_studies)
# Convert multiple studies
connector.convert_data_from_lens(lens_bulk_studies)
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
spatialx_connector-0.1.4.tar.gz
(15.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file spatialx_connector-0.1.4.tar.gz.
File metadata
- Download URL: spatialx_connector-0.1.4.tar.gz
- Upload date:
- Size: 15.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
39f621691f39d6d70469577c6f17e5aa6435a78b157c320c401edc71cf450c63
|
|
| MD5 |
e4d5ab4e39ba1d7f16f903648e64053a
|
|
| BLAKE2b-256 |
a3f4a53d7aad749cf6df2f71099a849d028fd6c3e7b6b67618c044db12dea9f8
|
File details
Details for the file spatialx_connector-0.1.4-py3-none-any.whl.
File metadata
- Download URL: spatialx_connector-0.1.4-py3-none-any.whl
- Upload date:
- Size: 16.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2eaf5464d31c99b39d9f213286f7f99b81b31110c13a996d5185a7050bcd2451
|
|
| MD5 |
854e3b7593f0188bd62ada564037654f
|
|
| BLAKE2b-256 |
a84ced723e3c95d1b511247e64d4a97ec12c7c3afb4dff7b6dbdabde1de05186
|