juliensimon/gcvs-variable-stars
General Catalogue of Variable Stars (GCVS) Credit: NASA/ESA/Hubble Part of a dataset collection on Hugging Face. Dataset description The General Catalogue of Variable Stars (GCVS) is the canonical reference catalog of variable stars, maintained since 1948 by the Sternberg Astronomical Institute at Moscow State University. Variable stars are stars whose brightness changes over time, either due to intrinsic physical processes (pulsation, eruption, rotation)… See the full description on the dataset page: https://huggingface.co/datasets/juliensimon/gcvs-variable-stars.
General Catalogue of Variable Stars (GCVS)
<div align="center"> <img src="banner.jpg" alt="The Crab Nebula, a supernova remnant" width="400"> <p><em>Credit: NASA/ESA/Hubble</em></p> </div>
Part of a [dataset collection](https://huggingface.co/collections/juliensimon/astronomy-datasets-69c24caf2f17e36128946743) on Hugging Face.
Dataset description
The General Catalogue of Variable Stars (GCVS) is the canonical reference catalog of variable stars, maintained since 1948 by the Sternberg Astronomical Institute at Moscow State University.
Variable stars are stars whose brightness changes over time, either due to intrinsic physical processes (pulsation, eruption, rotation) or extrinsic geometry (eclipsing binaries). The GCVS is the internationally recognized authority for variable star designations and classifications. It has been compiled and updated for over 75 years, serving as the foundation for stellar variability research.
The catalog spans an extraordinary range of stellar physics. Mira variables (type M) are asymptotic giant branch stars with periods of hundreds of days and visual amplitudes exceeding 2.5 magnitudes, driven by radial pulsations in their extended hydrogen envelopes. Semi-regular variables (SR) occupy a similar evolutionary stage but pulsate with smaller amplitudes and less predictable cycles. Eclipsing binaries (EA, EB, EW) are not intrinsically variable at all -- their brightness changes arise purely from orbital geometry as one star transits the disk of its companion. At the other extreme, eruptive variables like UV Ceti flare stars and FU Orionis objects undergo sudden, dramatic outbursts linked to magnetic reconnection events or disk accretion instabilities.
Among the most scientifically important classes are the pulsating variables used as standard candles: classical Cepheids (DCEP), whose period-luminosity relation underpins the extragalactic distance ladder, and RR Lyrae stars (RR), horizontal-branch pulsators that trace the old stellar populations of the Galactic halo and globular clusters.
Because the GCVS draws on over a century of photometric monitoring, it captures variability on timescales inaccessible to modern surveys that have operated for only a few years. Many entries include epochs of maximum light stretching back to the early twentieth century, enabling studies of period changes, evolutionary effects, and long-term amplitude modulation that would be impossible from any single contemporary survey alone.
This dataset is suitable for tabular classification tasks.
Schema
Quick stats
- 60,894 variable stars
- 544 variability types
- 40,096 with known period
- 15,116 with spectral type
- Top types: M (7,920), RRAB (7,590), EA (4,113), EW (3,616), LB (2,800)
Usage
from datasets import load_dataset
ds = load_dataset("juliensimon/gcvs-variable-stars", split="train")
df = ds.to_pandas()from datasets import load_dataset
ds = load_dataset("juliensimon/gcvs-variable-stars", split="train")
df = ds.to_pandas()
# Cepheid variables (standard candles for distance measurement)
cepheids = df[df["variable_type"].str.startswith("DCEP", na=False)]
print(f"{len(cepheids):,} classical Cepheids")
# Eclipsing binaries
eclipsing = df[df["variable_type"].str.startswith("E", na=False)]
print(f"{len(eclipsing):,} eclipsing binaries")
# Period-luminosity distribution
import matplotlib.pyplot as plt
valid = df.dropna(subset=["period_days", "magnitude_max"])
valid = valid[valid["period_days"] > 0]
plt.scatter(valid["period_days"], valid["magnitude_max"], s=0.5, alpha=0.3)
plt.xscale("log")
plt.gca().invert_yaxis()
plt.xlabel("Period (days)")
plt.ylabel("Magnitude (max brightness)")
plt.title("GCVS Period vs Magnitude")
plt.show()Data source
https://www.sai.msu.su/gcvs/gcvs/
Related datasets
If you find this dataset useful, please consider giving it a like on Hugging Face. It helps others discover it.
About the author
Created by Julien Simon — AI Operating Partner at Fortino Capital. Part of the Space Datasets collection.
Citation
@dataset{gcvs_variable_stars,
title = {General Catalogue of Variable Stars (GCVS)},
author = {Simon, Julien},
year = {2026},
url = {https://huggingface.co/datasets/juliensimon/gcvs-variable-stars},
publisher = {Hugging Face},
note = {Derived from Sternberg Astronomical Institute, Moscow State University, https://www.sai.msu.su/gcvs/gcvs/}
}