diff --git a/demo.py b/demo.py new file mode 100644 index 00000000..6bdece37 --- /dev/null +++ b/demo.py @@ -0,0 +1,51 @@ +import logging + +logging.basicConfig( + format="%(asctime)s.%(msecs)03dZ %(processName)s %(threadName)s %(levelname)s:%(name)s:%(message)s", + datefmt="%Y-%m-%dT%H:%M:%S", + level=logging.INFO, +) + +logger = logging.getLogger("grib demo") + +import xarray as xr +import numpy as np +import pandas as pd +import zarr +import kerchunk +import fsspec +import gcsfs + + +if __name__ == "__main__": + + fs = fsspec.filesystem( + protocol="reference", + fo="gs://gcp-public-data-weather.camus.store/high-resolution-rapid-refresh/version_2/monthly_horizon/conus/hrrr.202309/hrrr.wrfsfcf.16_hour_horizon.zarr", # The target zarr json blob + remote_protocol="gcs", + ) + + + ds = xr.open_dataset( + fs.get_mapper(""), + engine="zarr", + drop_variables=["heightAboveGround"], # Drop magic broken variable + backend_kwargs=dict( + consolidated=False, + ) + ) + logger.info(ds) + + df = ds[ + ['2t', 'dswrf'] + ].interp( + dict(x=[500, 800], y=[300, 400]) + ).to_dataframe() + + # .loc[ + # dict(valid_time=slice('2023-09-04', '2023-09-06')) + # ].compute() + + + + logger.info(df)