from pathlib import Path
import xarray as xr
import numpy as np

# Root folder to search in
root = Path(".test")

for nc_file in root.rglob("geo_*.nc"):
    print(f"Processing {nc_file}")
    try:
        ds = xr.load_dataset(nc_file)

        if "observations" in ds:
            data = ds["observations"].values
            if np.issubdtype(data.dtype, np.number):
                data[data > 450] = np.nan
                ds["observations"].values[:] = data
        ds.close()

        ds.to_netcdf(nc_file, mode="w")
    except Exception as e:
        print(f"Failed to process {nc_file}: {e}")

