Tutorial / User Guide

Deconvolution Analysis Tutorial

Step-by-step guide from expression matrix upload to cell composition analysis

What is this tool?

ODlab estimates cell-type abundance from mixed expression profiles using integrated deconvolution models. It supports Bulk samples and spatial transcriptomics spots, then connects the output to composition, clustering, survival and pathway analyses.

Run deconvolution

Start with expression and a model-compatible reference. The model estimates abundance.

Analyze existing abundance

Import abundance you already calculated. Add metadata or expression for downstream analyses; no model rerun.

Workflow overview

01

Input data

Prepare expression & IDs

02

Quality control

Upload and validate

03

Reference selection

Review compatible reference

04

Deconvolution model

Submit and monitor

05

Result visualization

Explore and export

In the actual workspace, choose Bulk/ST and a model first, then upload the files requested by that model. Existing-result import goes directly from validation to visualization.

Tailor the guide to your data

Prepare a pre-deconvolution gene expression matrix and the reference required by your selected model. Each row represents an independent sample; provide clinical metadata for grouping and survival.

FileFilename exampleWhen neededPer-file limit
Expressionbulk_expression.h5adRequired256 MB
Referencebulk_reference.h5adRequired by supervised models1024 MB
Metadatabulk_metadata.csv / .tsvOptional; grouping / Bulk survival256 MB
Naming: use <dataset>_<role>.<extension>. Dataset names contain 1–64 lowercase letters, digits, underscores or hyphens. For example: brca_expression.h5ad and brca_metadata.csv. Built-in examples retain their published names.

Expression structure

Expression uploads currently accept H5AD only. Rows are samples (Bulk) or spots (ST); columns are genes. Put entity IDs in the obs index and gene IDs in the var index. X holds the intended expression layer. If your source table has genes as rows, transpose it before creating H5AD.

Sample / obsCD3DMS4A1EPCAM
Sample_1120358
Sample_2906215

Conceptual preview, not a CSV expression upload. H5AD query files require sparse X/data, X/indices, X/indptr and explicit obs/var indices. Values must be finite and nonnegative, with unique gene and entity IDs.

Gene identifiers

Use one naming scheme and the same species in reference and expression. Shared genes are required. The current pathway reader matches gene names directly; prefer gene symbols for human Reactome/GO.

Normalization

Follow the model’s count/normalization requirements. Count-based models require integer counts in X. Do not upload log-transformed data as counts or negative z-scores as expression. Microarray profiles have no separate upload mode and need model-compatible preprocessing and H5AD conversion.

Metadata fields

ColumnRequirementUsed for
sample_idUnique, nonempty; exact abundance/expression matchJoining files
groupNonempty; at least two groupsClinical comparison / metadata grouping / KM
survival_timeFinite, positive; use days consistentlyCox and KM
event0 = censored; 1 = event; no missing valuesCox and KM

All four columns are required if you upload Bulk metadata. Additional endpoints such as OS/DSS/PFI and clinical columns may be included. If patient_id is supplied, survival analysis keeps one sample per patient by a fixed sample-ID order.

FAQ & troubleshooting

What input data should I prepare?

For deconvolution, use an expression H5AD and the reference requested by your model. In this platform, rows are samples/spots and columns are genes. Bulk metadata adds group, survival_time and event. Existing abundance uses CSV/TSV with sample_id or spot_id first.

Can I upload a CSV, TXT or TSV expression matrix?

Not directly. Expression and Reference slots currently accept H5AD. CSV/TSV are supported for abundance and metadata; coordinates use CSV. Convert a tabular expression matrix before upload using the preparation example.

What does cell abundance mean?

It is the model’s estimate of each cell population’s contribution. Check whether your model produces proportions, relative scores or absolute abundance before interpreting or comparing outputs.

Can I use my own reference?

Yes: a model-compatible Reference H5AD with categorical cell_type annotations. A precomputed signature CSV is not a universal accepted input. Gene naming, species, tissue and donor requirements must match your chosen model.

Why does a file fail validation?

The error reports the relevant naming, size, field, value, index or matching issue. Check the filename role, required metadata columns, ID uniqueness and matrix dimensions. Optional files are still validated when supplied.

Why can’t I run all five modules on an ST slice?

A spot is not a patient. Composition, spatial clustering and pathway analysis can work at spot level; Cox and KM need independent Bulk samples with genuine survival observations.

Do clinical metadata affect deconvolution?

The external metadata file mainly supports downstream grouping and survival. Reference cell_type and model-specific donor/sample annotations are different: those can participate in model fitting.

Why do my results differ from the tutorial images?

Images are archived examples. Your reference, sample cohort, abundance, endpoint and parameters determine actual curves and effect sizes. Correct plots need not reproduce the same biological pattern.

How do I recover a failed task or unavailable module?

Inspect task logs for model failures and the affected module’s message for downstream failures. Provide the missing input or fix the mapping, then rerun the applicable operation. Download results before the configured retention period expires.

Ready to use your own data?

Create a task, validate the inputs, and interpret the modules that apply.

Go to Analysis ↗

structure preview

These rows demonstrate structure only. Two-row templates are not enough for survival/pathway analyses.