Omitir navegación

Daymet

Weather Daymet AIforEarth

Cálculos de parámetros meteorológicos diarios en Norteamérica en una cuadrícula de un kilómetro.

Daymet proporciona mediciones de las condiciones meteorológicas cerca de la superficie. El objetivo principal de Daymet es proporcionar cálculos de datos donde no hay instrumentos. Este conjunto de datos proporciona datos de Daymet Versión 3 para Norteamérica; las áreas insulares de Hawái y Puerto Rico están disponibles como archivos separados de la parte continental. Las variables de salida de Daymet incluyen temperatura mínima, temperatura máxima, precipitación, radiación de onda corta, presión del vapor, equivalente en agua de la nieve y duración del día. El conjunto de datos abarca el período comprendido entre el 1 de enero de 1980 y la actualidad. Cada año se procesa individualmente al cierre de un año natural. Las variables de Daymet son superficies continuas proporcionadas en forma de archivos individuales, por variable y año, con una resolución espacial de un kilómetro cuadrado y una resolución temporal diaria. Los datos están en proyección cónica conforme de Lambert para Norteamérica y se distribuyen con un formato netCDF que cumple las convenciones de metadatos de Climate and Forecast (CF), versión 1.6.

Recursos de Storage

Los datos se almacenan en blobs en el centro de datos Este de EE. UU., en el siguiente contenedor de blobs:

https://daymet.blob.core.windows.net/daymetv3-raw

Dentro de ese contenedor, se utiliza la siguiente nomenclatura para los datos:

davymet_v3_[variable]_[year]_[region].nc4

  • Variable puede ser:
    • tmin (temperatura mínima)
    • tmax (temperatura máxima)
    • prcp (precipitación)
    • srad (radiación de onda corta)
    • vp (presión del vapor)
    • sne (equivalente en agua de la nieve)
    • dayl (duración del día)
  • año es un año con cuatro dígitos
  • region es un código de región, uno de “na” (masa continental de América del Norte), “hawaii” o “puerto rico”

Por ejemplo, los datos de temperatura máxima de 1982 para la masa continental están disponibles en:

https://daymet.blob.core.windows.net/daymetv3-raw/daymet_v3_tmax_1982_na.nc4

Hay disponible un ejemplo completo de Python del acceso a un blob de Daymet y su trazado en el cuaderno que se proporciona en “Acceso a datos”.

También proporcionamos un token SAS (firma de acceso compartido) de solo lectura para permitir el acceso a los datos de Daymet a través de, por ejemplo, BlobFuse, que permite montar contenedores de blobs como unidades:

st=2020-01-03T00%3A12%3A06Z&se=2031-01-04T00%3A12%3A00Z&sp=rl&sv=2018-03-28&sr=c&sig=ca0OY7h4J6j0JxQiiTcM9PeZ%2FCWmX5wC5sjKUPqq0mk%3D

Encontrará las instrucciones de montaje para Linux aquí.

El procesamiento a gran escala con este conjunto de datos se realiza mejor en el centro de datos de Azure de la región Este de EE. UU., donde se almacenan los datos. Si utiliza datos de Daymet para actividades relacionadas con las ciencias ambientales, plantéese solicitar una subvención AI for Earth para sustentar sus necesidades de proceso.

Referencia bibliográfica

Si utiliza estos datos en una publicación, cite:

Thornton, P.E., M.M. Thornton, B.W. Mayer, Y. Wei, R. Devarakonda, R.S. Vose y R.B. Cook. 2016. Daymet: Daily Surface Weather Data on a 1-km Grid for North America, versión 3. ORNL DAAC, Oak Ridge, Tennessee (Estados Unidos).

Consulte la directiva sobre datos de uso y referencias bibliográficas de Oak Ridge National Laboratory Distributed Active Archive Center (ORNL DAAC) para obtener más información.

Recursos

Los siguientes recursos y referencias pueden ser de utilidad a la hora de trabajar con el conjunto de datos Daymet:

Bonita imagen


Temperatura máxima media diaria en Hawái en 2017.

Contacto

Si tiene preguntas relacionadas con este conjunto de datos, póngase en contacto con aiforearthdatasets@microsoft.com.

Notificaciones

MICROSOFT PROPORCIONA AZURE OPEN DATASETS “TAL CUAL”. MICROSOFT NO OFRECE NINGUNA GARANTÍA, EXPRESA O IMPLÍCITA, NI CONDICIÓN CON RESPECTO AL USO QUE USTED HAGA DE LOS CONJUNTOS DE DATOS. EN LA MEDIDA EN LA QUE LO PERMITA SU LEGISLACIÓN LOCAL, MICROSOFT DECLINA TODA RESPONSABILIDAD POR POSIBLES DAÑOS O PÉRDIDAS, INCLUIDOS LOS DAÑOS DIRECTOS, CONSECUENCIALES, ESPECIALES, INDIRECTOS, INCIDENTALES O PUNITIVOS, QUE RESULTEN DE SU USO DE LOS CONJUNTOS DE DATOS.

Este conjunto de datos se proporciona bajo los términos originales con los que Microsoft recibió los datos de origen. El conjunto de datos puede incluir datos procedentes de Microsoft.

Access

Available inWhen to use
Azure Notebooks

Quickly explore the dataset with Jupyter notebooks hosted on Azure or your local machine.

Select your preferred service:

Azure Notebooks

Azure Notebooks

Package: Language: Python

Accessing zarr-formatted Daymet data on Azure

The Daymet dataset contains daily minimum temperature, maximum temperature, precipitation, shortwave radiation, vapor pressure, snow water equivalent, and day length at 1km resolution for North America. The dataset covers the period from January 1, 1980 to December 31, 2019.

The Daymet dataset is maintained at daac.ornl.gov/cgi-bin/dsviewer.pl?ds_id=1328 and mirrored on Azure Open Datasets at aka.ms/ai4edata-daymet. Azure also provides a cloud-optimized version of the data in Zarr format, which can be read into an xarray Dataset. If you just need a subset of the data, we recommend using xarray and Zarr to avoid downloading the full dataset unnecessarily.

The datasets are available in the daymeteuwest storage account, in the daymet-zarr container. Files are named according to daymet-zarr/{frequency}/{region}.zarr, where frequency is one of {daily, monthly, annual} and region is one of {hi, na, pr} (for Hawaii, CONUS, and Puerto Rico, respectively). For example, daymet-zarr/daily/hi.zarr.

In [1]:
# Standard or standard-ish imports
import warnings
import matplotlib.pyplot as plt

# Less standard, but still pip- or conda-installable
import xarray as xr
import fsspec

# Neither of these are accessed directly, but both need to be installed; they're used
# via fsspec
import adlfs
import zarr

account_name = 'daymeteuwest'
container_name = 'daymet-zarr'

Load data into an xarray Dataset

We can lazily load the data into an xarray.Dataset by creating a zarr store with fsspec and then reading it in with xarray. This only reads the metadata, so it's safe to call on a dataset that's larger than memory.

In [2]:
store = fsspec.get_mapper('az://' + container_name + '/daily/hi.zarr', account_name=account_name)
# consolidated=True speeds of reading the metadata
ds = xr.open_zarr(store, consolidated=True)
ds
Out[2]:

Working with the data

Using xarray, we can quickly select subsets of the data, perform an aggregation, and plot the result. For example, we'll plot the average of the maximum temperature for the year 2009.

In [3]:
warnings.simplefilter("ignore", RuntimeWarning)
fig, ax = plt.subplots(figsize=(12, 12))
ds.sel(time="2009")["tmax"].mean(dim="time").plot.imshow(ax=ax, cmap="inferno");

Or we can visualize the timeseries of the minimum temperature over the past decade.

In [4]:
fig, ax = plt.subplots(figsize=(12, 6))
ds.sel(time=slice("2010", "2019"))['tmin'].mean(dim=["x", "y"]).plot(ax=ax);

Chunking

Each of the datasets is chunked to allow for parallel and out-of-core or distributed processing with Dask. The different frequencies (daily, monthly, annual) are chunked so that each year is in a single chunk. The different regions in the x and y coordinates so that no single chunk is larger than about 250 MB, which is primarily important for the na region.

In [5]:
ds['prcp']
Out[5]:

So our prcp array has a shape (14600, 584, 284) where each chunk is (365, 584, 284). Examining the store for monthly North America, we see the chunk each of a size of (12, 1250, 1250).

In [6]:
na_store = fsspec.get_mapper("az://" + container_name + "/monthly/na.zarr",
                             account_name=account_name)
na = xr.open_zarr(na_store, consolidated=True)
na['prcp']
Out[6]:

See http://xarray.pydata.org/en/stable/dask.html for more on how xarray uses Dask for parallel computing.