0

我试图找到(DJF, MAM, JJA, SON)10 年内每个季节的最大降雨量。我正在使用 netcdf 数据和 xarray 来尝试这样做。数据包括降雨量(每 3 小时记录一次)、纬度和经度数据。现在我有以下代码:

ds.groupby('time.season).max('time')

但是,当我这样做时,输出的形状(4,145,192)表明它在整个期间的每个季节都取最大值。我想要每年每个季节的最大值。换句话说,输出的形状应该类似于(40,145,192)(每年 4 个值 x 10 年)

我已经考虑过尝试使用频率DataSet.resample以及使用time=3M频率来做到这一点,但是它并没有正确地划分月份。如果必须,我可以更改数据集,所以它从正确的位置开始,但我希望有一种更简单的方法,因为已经有一个函数可以正确分组它。

谢谢,如果您需要更多详细信息,请告诉我!

4

1 回答 1

2

Resample 将成为这项工作最简单的工具。您接近时间频率,但您可能希望使用带有偏移的季度频率:

ds.resample(time='QS-Mar').max('time')

这些偏移量可以按照 Pandas 文档中的描述进一步配置:http: //pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases

于 2018-04-03T21:10:14.063 回答