Importing nco package: TypeError: object of type 'NoneType' has no len()

Importing nco package: TypeError: object of type 'NoneType' has no len()

我正在尝试使用 nco 包通过 ncrcat 合并多个 netcdf 文件。这本身很容易做到,但我无法通过第二行:

from nco import Nco
nco=Nco()

mrms1= nc.Dataset("/Users/arian/project/data/mrms_20190501/20190501_190000.nc")
mrms2= nc.Dataset("/Users/arian/project/data/mrms_20190501/20190501_190500.nc")

nco.ncrcat(input=[mrms1, mrms2], output='testnet.nc')

nco=Nco() 给出错误的地方:

TypeError: object of type 'NoneType' has no len()

通常我知道当您尝试从无到有获取长度时会出现此错误,但据我了解,必须创建此实例才能在脚本中使用 ncrcat。

我确定 anaconda 上有 nco 和 pynco 的更新版本。我也尝试使用 cdo 包来合并文件而不是文件,但我得到了同样的错误。我还在终端中使用 ncrcat 作为命令行,但我得到一个 "term is not recognized as a cmdlet, function, script file, or operable program" 所以这是一个单独的蠕虫罐头。此外,netCDF4.MFDataset 不起作用,因为数据没有时间维度来聚合,xarray 也没有,它给出了 TypeError: coercing to Unicode: need string or buffer, Dataset found.

根据许多小时的研究,我觉得 nco len() Typerror 是最容易修复的,但欢迎来自我提到的任何帮助。提前致谢。

两分

1) 输入必须是文件名字符串或文件名字符串列表
例如输入 =["20190501_190000.nc", "20190501_190500.nc"]

2) 我不是 conda 专家,但对于 运行 pynco,nco 命令必须在您的 PATH 环境变量中