我有一个非常大的netCDF文件,我正在python中使用netCDF4读取它
我不能一次全部读取这个文件,因为它的尺寸(1200 x 720 x 1440)太大,整个文件不能一次放入内存。第一个维度表示时间,下两个维度分别表示纬度和经度。import netCDF4
nc_file = netCDF4.dataset(path_file, 'r', format='NETCDF4')
for yr in years:
nc_file.variables[variable_name][int(yr), :, :]
然而,一年一次的阅读是极其缓慢的。如何在下面的用例中加快速度?
--编辑
块大小为1我可以读取一系列年份:nc_文件。变量[变量名][0:100,:,:]
有几个用例:
多年来:numpy.ma.sum(nc_file.variables[variable_name][int(yr), :, :])# Multiply each year by a 2D array of shape (720 x 1440)
for yr in years:
numpy.ma.sum(nc_file.variables[variable_name][int(yr), :, :] * arr_2d)# Add 2 netcdf files together
for yr in years:
numpy.ma.sum(nc_file.variables[variable_name][int(yr), :, :] +
nc_file2.variables[variable_name][int(yr), :, :])