diff --git a/src/spatialdata/models/models.py b/src/spatialdata/models/models.py index 60f4ee20..a4efd60e 100644 --- a/src/spatialdata/models/models.py +++ b/src/spatialdata/models/models.py @@ -885,7 +885,7 @@ def _add_metadata_and_validate( # It also just changes the state of the series, so it is not a big deal. if isinstance(data[c].dtype, CategoricalDtype) and not data[c].cat.known: try: - data[c] = data[c].cat.set_categories(data[c].head(1).cat.categories) + data[c] = data[c].cat.set_categories(data[c].compute().cat.categories) except ValueError: logger.info(f"Column `{c}` contains unknown categories. Consider casting it.")