【发布时间】:2018-09-13 07:30:23
【问题描述】:
我正在尝试找出 10 年内每个季节 (DJF, MAM, JJA, SON) 的最大降雨量。我正在使用 netcdf 数据和 xarray 来尝试这样做。数据包括降雨量(每 3 小时记录一次)、纬度和经度数据。现在我有以下代码:
ds.groupby('time.season).max('time')
但是,当我这样做时,输出的形状为(4,145,192),表明它在整个时期内每个季节都取最大值。我想要每年每个季节的最大值。换句话说,输出应该具有类似(40,145,192) 的形状(每年 4 个值 x 10 年)
我已经考虑尝试使用DataSet.resample 以及使用time=3M 作为频率来执行此操作,但是它并没有正确地划分月份。如果必须,我可以更改数据集,因此它从正确的位置开始,但我希望有一种更简单的方法,因为已经有一个函数可以对其进行正确分组。
谢谢,如果您需要更多详细信息,请告诉我!
【问题讨论】:
-
为年份添加一列并执行
ds.groupby(by=['time.season', 'year']).max() -
谢谢!我会尝试这样做。 (使用 xarray 和 pandas 的新手,所以仍在学习如何做超出基础的任何事情)
标签: python group-by dataset netcdf4 xarray