python - 如何将每日 netcdf 文件转换为每月 netcdf 文件

标签 python netcdf nco cdo-climate

我已经下载了 netcdf 文件形式的气候模型输出,其中包含一个变量 (pr),适用于全世界,每天的时间步长。我的最终目标是获得欧洲的月度数据。

我以前从未使用过 netcdf 文件,而且我能找到的所有 netcdf 特定软件似乎都无法在 Windows 中运行。由于我在 R 中编程,我尝试使用 ncdf4 包,但遇到了内存大小问题(我的文件约为 2Gb)...我现在正在尝试 python 中的 netCDF4 模块(我第一次使用 python - 所以对我要轻松一点)。

我已经成功安装了所有内容,并在网上找到了一些代码来导入数据集:

nc_fid = Dataset(nc_f, 'r')  
# Extract data from NetCDF file
lats = nc_fid.variables['lat'][:]
lons = nc_fid.variables['lon'][:]
time = nc_fid.variables['time'][:]
pp  = nc_fid.variables['pr'][:]  

但是我发现的所有教程都是关于如何制作 netcdf 文件...我不知道如何将每日降雨量(变量 pr)汇总为每月降雨量。另外,我在不同的文件中有不同类型的日历,但我什至不知道如何访问该信息:

time.calendar
AttributeError: 'numpy.ndarray' object has no attribute 'calendar'

请帮忙,我不想学习 Linux 只是为了整理一些数据:(

最佳答案

为什么不完全避免编程并使用 NCO它提供了ncrcat命令来聚合数据:

ncrcat day*.nc month.nc

瞧。查看更多 ncrcat 示例 here .

添加了 20160628:如果您想要每月平均值而不是一个月的时间序列,则仅对 ncra 使用相同的命令,而不是 ncrcat。该手册解释了类似的事情。

关于python - 如何将每日 netcdf 文件转换为每月 netcdf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26240747/

相关文章:

python - 使用 tf.map_fn 计算张量的逆

python - 如何从用于在 tensorflow 服务中加载多个模型的自定义模型配置文件中删除模型详细信息?

python - 在没有 int() 的情况下将字符串转换为 Int

python - 在python中按纬度和经度从.nc文件中提取数据

r - 使用 r 中的栅格包聚合季节性方法

python - Django 安装问题 No module named django.core

python - python中高效读取netcdf变量

scipy - NetCDF:如何屏蔽/过滤掉全局数据集中的非土地值,最好使用 Python 和/或 NCO?

python - lat lon 子集的 netcdf4 提取

netcdf - 修改netcdf文件的变量属性