如何获取包含 xarray.Dataset 变量名称的列表?

Tho*_*mas 19 python-xarray

我正在寻找一种从 xarray.DataSet 对象中提取数据变量名称(字符串)列表的方法。我已经使用过xr_object.data_varsxr_object.data_vars.keys()但它们似乎没有提供任何有用的东西。

另外, xarray 的文档似乎没有显示 xarray 有一个内置的方法或属性来获取类似的东西。

有人知道该怎么做吗?

fen*_*ano 19

你的问题有点模棱两可。我想你知道

xr_object.keys()
Run Code Online (Sandbox Code Playgroud)

将为您提供数据集键的视图。

如果您只需要将其放入列表中,那么 list() 函数就可以做到这一点(至少在 V0.11 之后):(ds 是 xr_object)

list(ds.keys())
Run Code Online (Sandbox Code Playgroud)

如果您也需要尺寸:

list(ds.coords)
Run Code Online (Sandbox Code Playgroud)

  • `list(xrds.data_vars)` 也有效 (5认同)
  • `list(ds)` 似乎也返回变量列表,它也可以通过 `list(df)` 返回 pandas 数据框的列列表的方式处理数据框,但我不确定它是否是一个推荐用法。我现在将坚持使用“list(ds.data_vars)”。谢谢。 (4认同)
  • @Thomas 这一点都不傻!`.keys()` 的结果看起来不像一个列表,我猜有一个 xarray 的内部 api 被调用来允许这种情况发生。另外,如果它解决了您的问题,请考虑接受它作为遮阳篷。 (2认同)

SCK*_*CKU 9

我想这里面有你想要的结果。

#a list with the variable names of your xarray.Dataset
res = [i.name for i in xr_object.data_vars] 
Run Code Online (Sandbox Code Playgroud)

  • `[i for i in xr_object.data_vars]` 也有效 (2认同)