如何在Scientific.IO.NetCDF.NetCDFFile中删除变量?
有没有办法从一个 Scientific.IO.NetCDF.NetCDFFile
中删除一个变量?如果文件是这样打开的:
nc = Scientific.IO.NetCDF.NetCDFFile("File.nc", "a")
无论是用
del nc.variables["var"]
还是用
nc.variables["var"] = None
都无法删除变量 var
。
提前感谢任何见解。
1 个回答
10
简单来说,你不能删除一个变量。这是NetCDF C-API的一个“特性”,并不是Scientific.IO.NetCDF或其他Python NetCDF模块的缺陷。
根据官方的NetCDF用户指南:属性比变量或维度更灵活;它们可以被删除,并且在创建后可以改变类型、长度和数值,而netCDF接口并没有提供删除变量或改变其类型和形状的方法。
不过,可以通过间接的方法解决这个问题,比如把除了那个有问题的变量以外的所有内容复制到一个新的NetCDF文件中。