我对使用pynco包在python中压缩NetCDF文件很感兴趣。在NCO中,我会使用:
nccopy -d 3 input_file.nc output_file.nc在python中,我尝试了以下操作:
from nco import Nco
Nco.nccopy(input='input_file.nc', output='output_file.nc', options=['-d 1'])这会产生一个属性错误'Nco' has no attribute 'nccopy'。pynco中是否支持nccopy
发布于 2021-04-26 06:23:51
nccopy是netCDF命令,而不是NCO命令。然而,ncks几乎可以做nccopy做的所有事情,还有很多其他的事情。要像您的示例中那样压缩,请尝试
Nco.ncks(input='input_file.nc', output='output_file.nc', options=['-7 -L 1'])发布于 2021-04-27 14:58:32
仅列出pynco的一个替代方案,您也可以使用cdo包在python中执行此操作:
from cdo import *
cdo = Cdo()
cdo.copy(input='input.nc',output='output.nc',options='-f nc4 -z zip_7')你可以选择从轻量级(zip_1)到最高压缩级(zip_9)的压缩级别,我通常会发现超过4级或5级的压缩级别不会有太大的收益(即额外节省的大小非常小),因为很多痛苦(命令需要更长的时间!)。我认为如果输入是netCDF4标准的,那么确保netCDF4输出的-f nc4可能就不需要了,但无论如何也没什么坏处。
您可以使用以下命令安装cdo
pip3 install cdohttps://stackoverflow.com/questions/67245423
复制相似问题