我有一个 xarray 数据集。我想复制它,使其具有与原件相同的尺寸/坐标/形状。这很简单。import xarray as xrn_segs = 4n_dates = 5num_vars = 4dims = (n_segs, n_dates)das = [xr.DataArray(np.random.rand(*dims), dims=['seg_id', 'date']) for i in range(num_vars)]ds_orig = xr.Dataset({'a': das[0], 'b': das[1], 'c': das[2], 'd': das[3]})ds_copy = ds_orig.copy(deep=True)然后我想为副本中的所有值分配一个常量值(假设为 1)。我已经想出如何做到这一点where:ds_copy.where(ds_copy == np.nan, other=1)但这假设我的价值观都不会是nan而且有点违反直觉的海事组织。有没有更稳健的方法?我想我也可以循环遍历数据变量(这是对 Pandas 的建议)... :for v in ds_copy.data_vars: ds_copy[v].loc[:, :] = 1也许我在这里寻找的是一种replace方法。
添加回答
举报
0/150
提交
取消