I'm trying to merge multiple Datasets having overlapping coordinates into one. When I set compat= to 'override', only the values of the first Dataset are kept and the rest of the resulting Dataset is set to nan. I'm fine using any of the intersecting values for cells with conflicts.
See the example below
import numpy as np
import pandas as pd
import xarray as xr
temperature = np.random.randint(1,255,size=(9,10,10))
precipitation = np.random.randint(1,255,size=(9,10,10))
lon = np.linspace(10,100,10)
lat = np.linspace(10,100,10)
time_0 = pd.date_range("2014-09-06", periods=9, freq='2D')
time_1 = pd.date_range("2014-09-06", periods=9, freq='3D')
ds_0 = xr.Dataset(
data_vars=dict(
temperature=(('time', 'y', 'x'), temperature),
precipitation=(('time', 'y', 'x'), precipitation)),
coords=dict(
x=lon,
y=lat,
time=time_0)
)
ds_1 = xr.Dataset(
data_vars=dict(
temperature=(('time', 'y', 'x'), temperature),
precipitation=(('time', 'y', 'x'), precipitation)),
coords=dict(
x=lon + 90,
y=lat,
time=time_0)
)
ds_2 = xr.Dataset(
data_vars=dict(
temperature=(('time', 'y', 'x'), temperature),
precipitation=(('time', 'y', 'x'), precipitation)),
coords=dict(
x=lon + 90,
y=lat + 90,
time=time_1)
)
ds_3 = xr.Dataset(
data_vars=dict(
temperature=(('time', 'y', 'x'), temperature),
precipitation=(('time', 'y', 'x'), precipitation)),
coords=dict(
x=lon,
y=lat + 90,
time=time_1)
)
# Combine
ds = xr.merge([ds_0, ds_1, ds_2, ds_3], compat='override')
print(ds)