Xarray 的 idxmax 函数 returns 尝试在栅格堆栈中分配与最大像素值对应的变量 id 时出错

Xarray's idxmax function returns an error when trying to assign the variable id corresponding with maximum pixel value across raster stack

我有一个维度为时间、纬度和经度的 xarray 数据数组。时间维度表示 n 天的周期,例如5 天、10 天、15 天等。我正在尝试为数据数组堆栈中的最大像素值创建一个像素值等于时间维度(n 天)变量 id 的新栅格。

我正在使用代码:

corrs_da.idxmax(dim='time',skipna=True,fill_value=None)

我得到错误:KeyError: 'Dimension "time" does not have coordinates'

这是输入数据数组的示例:

认为您需要 运行

corrs_da = corrs_da.rename({"variable": "time"})

在做 corrs_da.idxmax(dim='time',skipna=True,fill_value=None).

之前

不完全确定为什么,因为 corrs_da.time.coords 似乎表明时间有坐标。