Я пытаюсь найти, как передать его в tf.data.dataset, чтобы использовать возможности графа.
У меня очень большие данные для подачи в модель, поэтому мне нужно быстро загружать и подавать несколько графических процессоров.
Все примеры, которые я нашел, используют преобразование в df, например pandas, для создания данных преобразование и в конце превратите его в tf.data.dataset.
ex:
Код: Выделить всё
df_xds = xds.data.to_dataframe().reset_index()
... make modification to data
tf_dataset = tf.data.Dataset.from_tensor_slices(dict(df_xds))
Код: Выделить всё
import xdatasets as xd
import numpy as np
import xarray as xr
import plotly.express as px
import geopandas as gpd
import tensorflow as tf
from sklearn.model_selection import train_test_split
path = '/dbfs/mnt/era5-na-cds-grid-single-levels-reanalysis/zarr-timeseries'
ds = xr.open_zarr(path, consolidated=True)
datasets={'era5_single_levels': {'data': ds,
'variables': ['d2m', 't2m', 'tp', 'u10', 'v10', 'ptype']}}
time = {"timestep": "D",
"aggregation": {"d2m": np.nanmean,
"t2m": [np.nanmin, np.nanmax],
"tp": np.nansum,
"u10": np.nansum,
"v10": np.nansum,
"ptype": np.nanmean
}
}
space = {
"clip": "polygon", # bbox, point or polygon
"averaging": False, # spatial average of the variables within each polygon
"geometry": gdf[gdf['NOM']=='Mekinac'],
"unique_id": "NOM" # unique column name in geodataframe
}
xds = xd.Query(datasets=datasets,
space=space,
# time=time,
)
Подробнее здесь: https://stackoverflow.com/questions/791 ... ith-xarray