Skip to main content

Pseudotime Inference

Overview​

This block takes precomputed PCA embeddings and clustering assignments from upstream blocks and calculates a pseudotime trajectory, a measure of each cell's progression along a biological process like differentiation. It outputs a pseudotime value per cell and visualizes the results with UMAP and violin plots.

Pipeline context​

This block requires both PCA embeddings and cluster assignments. It follows both Dimensionality Reduction and Leiden Clustering.

 Blocks                                 Result pool
┌───────────
┌─────────────────────────┤
│ │
v │
╔═══════════════════════════╗ exports │
║ Dimensionality Reduction /║────->─-─┤ Embeddings & Clusters
║ Leiden Clustering ║ │ -----------------------
╚═══════════════════════════╝ │
├ [sampleId][cellId] -> pcValue, clusterId
┌─────────────────────────┤
│ │
v │
╔═══════════════════════════╗ exports │
║ Pseudotime Inference ║────->─-─┤ Pseudotime scores
╚═══════════════════════════╝ │ -------------------
├ [sampleId][cellId] -> pseudotime
┌─────────────────────────┤
│ │
v │
╔═══════════════════════╗ │
║ Downstream Analysis ║ │
╚═══════════════════════╝ │

Core structure: axes and p-columns​

The block consumes PCA embeddings and cluster assignments to produce a p-column containing a pseudotime value for each cell.

Input p-columns​

The block requires two main inputs: principal component embeddings and cluster assignments.

1. Principal Components​

  • P-column name: pl7.app/rna-seq/pcvalue
  • Description: The value for a given principal component for each cell.
  • Requirement: Required.
# --- Core Identity ---
name: pl7.app/rna-seq/pcvalue
valueType: Double

# --- Axes ---
axesSpec:
- name: pl7.app/sampleId
type: String
- name: pl7.app/sc/cellId
type: String
- name: pl7.app/rna-seq/pc-num
type: String

# --- Domain ---
domain:
pl7.app/blockId: "..." # blockId from the upstream dimensionality reduction run
pl7.app/rna-seq/batch-corrected": "false"

# --- Annotations ---
annotations:
pl7.app/label: "Principal Component Value"

2. Leiden Cluster​

  • P-column name: pl7.app/rna-seq/leidencluster
  • Description: The cluster assignment for each cell.
  • Requirement: Required.
name: pl7.app/rna-seq/leidencluster
valueType: String
axesSpec:
- name: pl7.app/sampleId
type: String
- name: pl7.app/cellId
type: String

Exported P-Columns​

The block exports a p-frame containing the new pseudotimedpt p-column for programmatic use by downstream blocks.

1. Pseudotime Score​

  • P-column name: pl7.app/rna-seq/pseudotimedpt
  • Description: The calculated pseudotime value, representing a cell's progress along a trajectory.
  • Requirement: Required.
  • Specification:
# --- Core Identity ---
name: pl7.app/rna-seq/pseudotimedpt
valueType: Double

# --- Axes ---
axesSpec:
- name: pl7.app/sampleId
type: String
- name: pl7.app/cellId
type: String

# --- Domain ---
domain:
pl7.app/blockId: "..." # a unique identifier for the block run

# --- Annotations ---
annotations:
pl7.app/label: "Pseudotime Scores"

Summary of Exported P-Columns​

P-Column NameDescriptionAxesRequirement
pl7.app/rna-seq/pseudotimedptThe calculated pseudotime value.[sampleId][cellId]Required