juliensimon/aavso-vsx-variable-stars
AAVSO Variable Star Index (VSX) Part of the Astronomy Datasets collection on Hugging Face. The AAVSO Variable Star Index (VSX) is the most comprehensive catalog of variable stars, containing 10,300,820 entries with variable star classifications, photometric properties, periods, and spectral types. VSX is maintained by the American Association of Variable Star Observers and is the standard reference for variable star research. Dataset description VSX aggregates… See the full description on the dataset page: https://huggingface.co/datasets/juliensimon/aavso-vsx-variable-stars.
AAVSO Variable Star Index (VSX)
Part of the [Astronomy Datasets](https://huggingface.co/collections/juliensimon/astronomy-datasets-69c24caf2f17e36128946743) collection on Hugging Face.
The AAVSO Variable Star Index (VSX) is the most comprehensive catalog of variable stars, containing 10,300,820 entries with variable star classifications, photometric properties, periods, and spectral types. VSX is maintained by the American Association of Variable Star Observers and is the standard reference for variable star research.
Dataset description
VSX aggregates variable star data from hundreds of surveys and catalogs worldwide including OGLE, ASAS-SN, ZTF, Gaia, and AAVSO observer submissions. Each entry represents a unique variable or suspected variable star with its variability type, brightness range, period (if known), epoch, and spectral classification.
Of the 10,300,820 entries, 4,830,314 have a measured period and 10,292,210 have a variability classification.
Key columns
Full schema includes 22 columns with uncertainty flags and limit flags.
Top variability types
Quick stats
- 10,300,820 variable star entries
- 4,830,314 with measured period (46.9%)
- 10,292,210 with variability classification (99.9%)
- RA range: 0.0001 to 360.0000 degrees
- Dec range: -89.9288 to 89.9038 degrees
Usage
from datasets import load_dataset
ds = load_dataset("juliensimon/aavso-vsx-variable-stars", split="train")
df = ds.to_pandas()
# Eclipsing binaries with known periods
eclipsing = df[df["variable_type"].str.startswith("E", na=False) & df["period_days"].notna()]
print(f"Eclipsing binaries with periods: {len(eclipsing):,}")
# Period-amplitude diagram for RR Lyrae
rrab = df[df["variable_type"] == "RRAB"]
import matplotlib.pyplot as plt
plt.scatter(rrab["period_days"], rrab["mag_range"], s=0.5, alpha=0.3)
plt.xlabel("Period (days)")
plt.ylabel("Amplitude (mag)")
plt.title("RR Lyrae (RRAB) Period-Amplitude Diagram")
plt.show()
# Sky distribution
plt.hexbin(df["ra_deg"], df["dec_deg"], gridsize=200, mincnt=1)
plt.colorbar(label="Star count")
plt.xlabel("RA (deg)")
plt.ylabel("Dec (deg)")
plt.title("VSX Variable Stars Sky Density")
plt.show()Data source
Watson, C.L., Henden, A.A., & Price, A. (2006), The International Variable Star Index (VSX). Society for Astronomical Sciences 25th Annual Symposium on Telescope Science, p. 47. Maintained by AAVSO: https://www.aavso.org/vsx/
Pipeline
Source code: juliensimon/space-datasets
Citation
@dataset{aavso_vsx_variable_stars,
author = {Simon, Julien},
title = {AAVSO Variable Star Index (VSX)},
year = {2026},
publisher = {Hugging Face},
url = {https://huggingface.co/datasets/juliensimon/aavso-vsx-variable-stars},
note = {Based on AAVSO VSX (Watson et al. 2006)}
}