我的学校集群管理员说:如果我们加载netcdf4模块,那么我们将无法加载netcdf3模块。所以他拒绝更新netcdf4


我有一个.nc文件,我认为这是一个netcdf4文件,我需要将其加载到R中。


在我们集群上的R中,仅安装了RNetCDF软件包。并且它无法读取上述.nc文件。 ncdf4软件包不存在。 (我尝试安装它,它说它需要版本4的netcdf库。当然,我没有sudo


在python中,(我不知道为什么)我可以加载netcdf4文件。我不知道是否可以使用它(以netcdf 3格式保存?)帮助我将数据加载到R中。



那么,我该怎么办?


管理员不想切换到netcdf4模块,因此似乎我(或他)无法在R中安装ncdf4软件包。
某些nc数据是直接从某些网站下载的,而某些nc文件是来自python中xarray包输出的(xarray的netcdf输出是版本4)。

最佳答案

使用xarray,可以通过在调用format='NETCDF3_CLASSIC'时指定to_netcdf来控制保存的文件的版本。因此,一个简单的解决方案可能是使用xarray,例如

ds = xarray.open_dataset(path)
ds.to_netcdf(dest, format='NETCDF3_CLASSIC')

08-19 23:56