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

更改 xarroxy 中的特定数据点

如何解决更改 xarroxy 中的特定数据点

我想替换 xr.DataArray 中的一些数据不是基于条件,而是基于多个时间点的特定点(并非像使用 .where 那样的所有点。

举个例子: 我有以下 DataArray

anom = xr.DataArray(data=np.random.rand(4,4,4),dims=["lat","lon","time"],coords={"lat": [-180,-90,90],"lon": [-90,-45,45],"time": [1,2,3,4]})

new = [.5,.5,.5]

并且想要检查 lat=20lon=20、超过三个 time 步的值并取最大值。我可以使用 .sel 选择它,然后像这样将值与 .where 进行比较:

x = anom.sel(lat=20,lon=20,method="nearest").sel(time=slice(2,4))
x = x.where(x > new,other=new)

但我在这一点上被卡住了。我不知道我现在如何用新的 anom.sel(lat=20,4)) 值覆盖 anom 中的值(特别是在 x 处)。

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