python - 将 10 分钟和 30 分钟 NETCDF 时间序列转换为每小时 + 在 Python 中删除 NaN 的函数?

标签 python netcdf

我正在尝试解析 NOAA 浮标 NetCDF 文件,并根据它们的启动时间,每 10 分钟、30 分钟或每小时记录一次数据。我需要所有这些都在 Python 中始终如一地每小时运行一次。因此,任何少于一个小时的事情都需要取平均值。我见过使用 cdo 的方法和 resample但我似乎无法工作。
我正在使用的 10 分钟 nc 文件示例:https://dods.ndbc.noaa.gov/thredds/fileServer/data/stdmet/41053/41053h9999.nc
我关心的三个变量是 wave_height、average_wpd 和 mean_wave_dir。如果我可以用 9999 之类的数字替换 NaN,我就很好。我需要一个可以将任何时间序列转换并平均为每小时的函数。

最佳答案

您可以尝试使用 xarray:

import xarray as xr

ds = xr.open_dataset("./41053h9999.nc")

ds_resampled = ds.resample(time='1H').mean() # or use other methods if you like see: http://xarray.pydata.org/en/stable/generated/xarray.Dataset.resample.html

# remove nans:
ds_resampled = ds_resampled.dropna('time')


关于python - 将 10 分钟和 30 分钟 NETCDF 时间序列转换为每小时 + 在 Python 中删除 NaN 的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68086219/

相关文章:

python - pickle cython类

python - 通过 PySide 使用 Python 2.7 检索笔压

Python:查找索引

Python C 扩展 : method signatures for documentation?

python - 在 python 中将 b'\x10' 转换为 int 16

python - 将 netcdf 文件的所有时间步长绘制成 map

linux - 使用 nccmp 配置失败

python - 处理 NetCDF4 文件时遇到问题

r - 从 netCDF 更快地读取时间序列?

c - 使用 nc_create 写入压缩文件