Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Explore candidate cell fates

Pseudotime orders cell states along a process. Fate mapping adds a different question: how strongly does each cell connect to several possible endpoints?

CyteArc models walks through the cell graph, favoring movement toward higher pseudotime. The chosen terminal populations act as absorbing endpoints: once a walk reaches one, it stops. The probability of reaching each endpoint summarizes the cell’s position relative to those choices. It does not track a living cell or prove its future identity.

We continue the developing-pancreas example from Order cell states with pseudotime, using Alpha, Beta, and Delta as candidate outcomes. Their familiar markers include Gcg, Ins1/Ins2, and Sst, respectively. Published annotations guide this example; another dataset needs its own endpoint evidence.

Open the prepared analysis

Started: 2026-10-11T18:54:47.893665Z | Wall time: 5.273 s

Open the downloaded store and its saved analysis.

DataStore has 3696 (3696) cells with 1 assays: RNA Cell metadata: 'I', 'ids', 'names', 'G2M_score', 'RNA_UMAP1', 'RNA_UMAP2', 'RNA_clusters', 'RNA_leiden_cluster', 'RNA_nCounts', 'RNA_nFeatures', 'RNA_percentMito', 'RNA_percentRibo', 'S_score', 'clusters', 'clusters_coarse' RNA assay has 27998 features and following metadata: 'I', 'ids', 'names', 'dropOuts', 'highly_variable_genes', 'nCells'

Started: 2026-10-11T18:54:53.170743Z | Wall time: 3.857 s

Orient the graph

Repeat the source and sink weighting from Order cell states with pseudotime. Ductal cells share a total of -1, and all Alpha, Beta, and Delta cells together share +1. These totals balance the source against the pooled sinks; they do not give each terminal cell type equal weight.

source cells 916 sink cells 1142 dtype: int64

Started: 2026-10-11T18:54:57.031062Z | Wall time: 0.641 s

Select the terminal populations

The live clusters column above contains published cell-type names. The saved run’s clusters result contains computed integer labels. For this example we choose one computed cluster per candidate fate, using its most common published annotation.

First inspect the annotation shares within each computed cluster. These two label arrays cover the same selected cells in the prepared store.

annotationmajority share
cluster
1Pre-endocrine0.843915
2Ductal0.769231
3Alpha0.862069
4Ductal0.967442
5Ductal0.672646
6Pre-endocrine0.605882
7Epsilon0.658537
8Ductal0.827586
9Delta0.741935
10Beta0.984000
11Ngn3 high EP1.000000
12Ngn3 high EP0.699588

Started: 2026-10-11T18:54:57.674678Z | Wall time: 0.122 s

Keep the clusters whose majority annotations match our three candidate fates. Requiring one cluster per fate makes a missing or ambiguous choice visible instead of selecting an endpoint arbitrarily.

sink labelmajority share
annotation
Alpha30.862069
Beta100.984000
Delta90.741935

Started: 2026-10-11T18:54:57.799546Z | Wall time: 0.012 s

The selected Delta cluster has a majority share of about 0.74, so it includes cells with other annotations. Every cell in a selected cluster becomes a boundary for this model. This is an exploratory endpoint choice, not a pure set of terminal cells. Before using it for a biological claim, inspect marker evidence and compare alternative boundaries. See Annotate cell types and states for marker checks.

Calculate the probabilities

{'valid probability rows': 3696, 'graph cells': 3696}

Started: 2026-10-11T18:54:57.814126Z | Wall time: 2.634 s

The output reports how many graph cells have valid probabilities. Summarize only those rows. Each probability column is one candidate fate, and the columns should sum to one for each valid cell.

AlphaBetaDeltarow-sum error
min0.0000000.0000000.0000000.000000e+00
median0.3456010.3172230.3081230.000000e+00
max1.0000001.0000001.0000001.192093e-07

Started: 2026-10-11T18:55:00.450914Z | Wall time: 0.016 s

A small row-sum error checks numerical consistency. Likewise, high probability at a chosen sink is imposed by the model. Neither check supplies independent evidence that the endpoint choice is biologically correct.

View the candidate outcomes

Store each probability as a cell column, then plot all three on the same zero-to-one color scale. This uses the same UMAP as the preceding trajectory analysis.

Three pancreas UMAPs show modeled Alpha, Beta, and Delta fate probabilities on a shared zero-to-one scale. High probabilities concentrate near the corresponding selected endpoints.

Started: 2026-10-11T18:55:00.468941Z | Wall time: 1.962 s

Look for where the model favors one outcome and where it divides probability between outcomes. A mixed probability describes this graph and its endpoints; it does not show that a cell has been observed to choose between those fates.

Common mistakes and limitations

  • The candidate list is incomplete: the dataset also contains Epsilon cells, and valid cells must distribute their probability among the three selected outcomes, so this example cannot describe every endocrine fate.

  • Reading model structure as biology: smooth gradients can come from graph averaging across an abrupt transition, and the probabilities depend on the chosen endpoints and graph, so compare plausible alternatives with Trajectory validation checklist before making a firm lineage claim.

  • Invalid cells have no interpretable probabilities: check how many cells are invalid and which graph components they hold before drawing conclusions.

Use Follow gene expression along pseudotime to inspect gene profiles along the same pseudotime axis.