CoolFace
Datasetpublic

gaozijun/cello_data

CELLO 10X-Xenium-52 Preprocessed data for CELLO, which predicts the gene expression of every cell in an H&E whole-slide image from the image and the cell locations. The dataset pairs 52 H&E whole-slide images with single-cell Xenium spatial transcriptomics from HEST-1k. It covers 12 organs and about 9.5 million cells, split by sample: split samples organs tiles cells train 36 Bowel, Breast, Kidney, Liver, Lung, Lymphoid, Pancreas, Skin 381,775 5,862,560 val 4 Bowel… See the full description on the dataset page: https://huggingface.co/datasets/gaozijun/cello_data.

sourceHugging Facecc-by-nc-sa-4.0updated 1d agoView on Hugging Face
1likes76downloads
Dataset Card

CELLO 10X-Xenium-52

Preprocessed data for CELLO, which predicts the gene expression of every cell in an H&E whole-slide image from the image and the cell locations.

The dataset pairs 52 H&E whole-slide images with single-cell Xenium spatial transcriptomics from HEST-1k. It covers 12 organs and about 9.5 million cells, split by sample:

splitsamplesorganstilescells
train36Bowel, Breast, Kidney, Liver, Lung, Lymphoid, Pancreas, Skin381,7755,862,560
val4Bowel, Breast, Lung23,412669,472
test ID6Lung, Breast, Bowel, Skin, Pancreas, Lymphoid59,5711,614,773
test OOD6Brain, Bone, Heart, Ovary; Kidney, Liver55,6441,383,418

The OOD test samples come from organs (Brain, Bone, Heart, Ovary) or health conditions (Kidney, Liver) that do not appear in training. samples.csv lists the organ, condition, split and source of every sample.

Download

With the CELLO code, one command downloads everything and unpacks the tiles into data/xenium52:

bash
python scripts/download_data.py            # add --split test for the test samples only

Without the code:

bash
huggingface-cli download gaozijun/cello_data --repo-type dataset --local-dir data/xenium52
cd data/xenium52/tiles && for f in *.tar; do tar -xf "$f" && rm "$f"; done

Contents

all_patches.csv                    one row per tile; paths are relative to the dataset root
tiles/<id>.tar                     the tiles of one sample; unpacks to tiles/<id>/
st/<id>.h5ad                       all cells of one sample (AnnData)
splits/train_val_test_split.csv    sample id -> train / val / test
samples.csv                        per-sample metadata and data source
gene_vocab.csv                     gene vocabulary predicted by the model (1,915 genes)
gene_rankings/<id>.json            highly variable (hvg) and spatially variable (svg) gene rankings
                                   of the val and test samples

Tiles. Each whole-slide image is cut into non-overlapping 224×224 tiles, and a tile is kept if it contains at least one cell. Each tile has two files named <id>_<x>_<y>, where (x, y) is its top-left corner in the slide:

  • —.png: the H&E image.
  • —.npz: the cells in the tile, with three arrays:
  • —coords: the (x, y) position of each cell inside the tile.
  • —X: expression as log1p of counts normalised to 100 per cell.
  • —genes: the gene names of the sample's Xenium panel.

AnnData. Each st/<id>.h5ad stores cell centroids in obsm['spatial'], raw counts in layers['counts'] and the normalised expression in X.

Gene panels differ between samples and contain 300–500 genes each.

Licence

This dataset is derived from HEST-1k and is released under the same licence, CC BY-NC-SA 4.0. The underlying Xenium datasets were published by 10x Genomics and on NCBI GEO; samples.csv gives the original study and licence of each sample.