我正在计算我的数据的年度方法:
sst_ANN = ds['sst'].groupby(ds['time.year']).mean(dim='time')
这肯定是优雅的。现在我想做同样的事情,除了计算在一年后的六月到五月的年平均值,而不是日历年。会有类似的单行代码吗?
答案 0 :(得分:1)
您可能应该使用xarray的重采样方法而不是groupby(在这种情况下它们类似,但重新采样稍微更容易操作以执行您想要的操作)。
对于xarray 0.10.0及更高版本,这看起来像:
sst_ANN = ds['sst'].resample(time='AS-JUN').mean('time')
对于旧版本的xarray,它看起来像:
sst_ANN = ds['sst'].resample(freq='AS-JUN', dim='time', how='mean')
在这两种情况下,我们都使用"anchored offset"。 AS-JUN
转换为"年度,期间开始,从6月开始"。