微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

多维 xarray 在哪里 dorps 坐标?

如何解决多维 xarray 在哪里 dorps 坐标?

我有一个多维变量,我想使用多维掩码对其进行掩码。但是,使用 xarray.where删除变量的坐标。这是一个使用非常小的文件的示例(链接到下载 var 文件 here 和掩码文件 here):

import xarray as xr
mask = xr.open_dataarray("mask.nc")
var = xr.open_dataarray("var.nc")

masked_var = var.where(mask,drop=False)

>>> print(mask.shape)
(3,3,101,101)
>>> print(var.shape)
(3,101)
>>> print(masked_var.shape)
(1,101)  # Note expected dimension is (3,101)

如您所见,where删除坐标。 我的预期行为是:

var.isel(lat=0,lon=0).where(mask.isel(lat=0,lon=0))
var.isel(lat=1,lon=1).where(mask.isel(lat=1,lon=1))
.
.
.
#for all lat and lon,resulting in masked_var with (3,101) shape.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。