猿问

Python netcdf - 每日数据所有时间段的月中位数

我有一个 NetCDF 文件input.nc。该文件代表了每 4 天采样一次的近 18 年的数据。从这个文件中,我想计算所有时间段内的月中值。所以输出文件应该只包含 12 个时间步。


我正在使用以下代码:


import xarray as xr

os.chdir(inbasedir)

data = xr.open_dataset('input.nc')

monthly_data = data.resample(freq='m', dim ='time', how = 'median')

monthly_data.to_netcdf("test.nc")

不幸的是,当我查看输出文件时,我的代码已经完成了所有时间序列中每个月的中值,最终我得到了 200 多个值。如何更改我的代码,以计算所有时间段内的 12 个月中位数?


慕标5832272
浏览 278回答 1
1回答

桃花长相依

您想使用groupby方法:monthly_data = data.groupby('time.month').median()这里有一些关于如何将 xarray 与时间序列数据一起使用的很好的例子:http ://xarray.pydata.org/en/stable/time-series.html
随时随地看视频慕课网APP

相关分类

Python
我要回答