CoolFace
Datasetpublic

EiffL/desi_legacysurvey_xmatch

DESI × Legacy Survey cross-match 95,895 galaxies, each carrying three modalities of the same object: DESI PROVABGS value-added properties (*_provabgs): redshift Z_HP_provabgs, stellar mass LOG_MSTAR_provabgs, SFR, MCMC posteriors, magnitudes, ... DESI spectrum (spectrum): flux / ivar / wavelength / mask / LSF, plus DESI photometry (*_spec) Legacy Survey DR10 (DECaLS south) imaging: image (160×160 cutouts in g,r,i,z with ivar + mask planes), rgb / object_mask / blobmodel PNGs… See the full description on the dataset page: https://huggingface.co/datasets/EiffL/desi_legacysurvey_xmatch.

sourceHugging Facecc-by-4.0updated 2mo agoView on Hugging Face
1likes506downloads
Dataset Card

DESI × Legacy Survey cross-match

95,895 galaxies, each carrying three modalities of the same object:

  • —DESI PROVABGS value-added properties (*_provabgs): redshift Z_HP_provabgs, stellar mass LOG_MSTAR_provabgs, SFR, MCMC posteriors, magnitudes, ...
  • —DESI spectrum (spectrum): flux / ivar / wavelength / mask / LSF, plus DESI photometry (*_spec)
  • —Legacy Survey DR10 (DECaLS south) imaging: image (160×160 cutouts in g,r,i,z with ivar + mask planes), rgb / object_mask / blobmodel PNGs, catalog of neighbouring sources, and photometry (*_ls)

Built by cross-matching three Multimodal Universe HATS catalogs at 1″ with LSDB, anchored on PROVABGS: `UniverseTBD/mmu_desi_provabgs` ⋈ `UniverseTBD/mmu_desi_edr_sv3` ⋈ `hugging-science/mmu_legacysurvey_dr10_south_21`. Match separations are recorded in _dist_provabgs_spec / _dist_provabgs_ls (arcsec; median ≈ 0.01″). Modality columns keep their native MMU names and schemas; only colliding scalar columns carry a _provabgs / _spec / _ls suffix. Shards are HEALPix-ordered (_healpix_29).

Usage

The full set is ~72 GB — stream it:

python
from datasets import load_dataset, Image

ds = load_dataset("EiffL/desi_legacysurvey_xmatch", split="train", streaming=True)
ds = ds.cast_column("rgb", Image())          # decode PNG blobs to PIL
row = next(iter(ds))
row["image"]["band"]      # ['des-g', 'des-r', 'des-i', 'des-z']
row["spectrum"]["flux"]   # DESI spectrum
row["Z_HP_provabgs"]      # PROVABGS redshift

object_mask and blobmodel are also Image()-castable PNG blobs.