如何使用 python 在 netcdf 文件中找到所有二维或更高维的变量?
How can I find all the variables 2D or higher in a netcdf file using python?
我想在 netcdf 文件中找到所有具有二维或更多维度的变量。换句话说,获取所有 非 0 或 1 维变量的列表。
看来我应该可以这样做:
import netCDF4
nc = netCDF4.Dataset(file)
varlist = [<something> k,v in nc.variables.iteritems()]
where uses v.ndim > 1
但我想不通。
您对所提供的列表理解就快完成了。布尔条件虽然在最后,而不是在开始。
[(nm, var) for nm, var in nc.variables.iteritems() if var.ndim > 1]
输出一个长度为 2 的元组列表,每个元组包含名称和 netCDF4 变量对象。如果你只想要变量,你可以做
[var for var in nc.variables.itervalues() if var.ndim > 1]
列表理解是一个非常强大的工具;请在此处查看官方文档:https://docs.python.org/2/tutorial/datastructures.html#list-comprehensions
我想在 netcdf 文件中找到所有具有二维或更多维度的变量。换句话说,获取所有 非 0 或 1 维变量的列表。
看来我应该可以这样做:
import netCDF4
nc = netCDF4.Dataset(file)
varlist = [<something> k,v in nc.variables.iteritems()]
where uses v.ndim > 1
但我想不通。
您对所提供的列表理解就快完成了。布尔条件虽然在最后,而不是在开始。
[(nm, var) for nm, var in nc.variables.iteritems() if var.ndim > 1]
输出一个长度为 2 的元组列表,每个元组包含名称和 netCDF4 变量对象。如果你只想要变量,你可以做
[var for var in nc.variables.itervalues() if var.ndim > 1]
列表理解是一个非常强大的工具;请在此处查看官方文档:https://docs.python.org/2/tutorial/datastructures.html#list-comprehensions