1

我遇到了合并多维数据集的问题。我有一个多维数据集列表,我想将其合并为一组较小的多维数据集。但是,当我尝试合并 iris 时,会出现以下错误消息:

Traceback (most recent call last):
  File "site-packages/iris/cube.py", line 377, in merge_cube
    proto_cube.register(cube, error_on_mismatch=True)
  File "site-packages/iris/_merge.py", line 1260, in register
    error_on_mismatch)
  File "site-packages/iris/_merge.py", line 420, in match
    raise iris.exceptions.MergeError(msgs)
iris.exceptions.MergeError: failed to merge into a single cube.
  cube.var_name differs: u'air_pressure_at_sea_level_0' != u'air_pressure_at_sea_level_2'

我将 Iris 版本 1.13.0 与 python 2.7 一起使用。

我尝试删除 var_name 坐标,但在执行 cube.remove_coord('var_name') 时出现异常:

iris.exceptions.CoordinateNotFoundError: 'Expected to find exactly 1  coordinate, but found none.'

除了这个细节,我认为这两个立方体适合合并,并希望得到任何指导。

4

1 回答 1

1

var_name是多维数据集上的一个属性(并且碰巧在坐标上),这就是两个多维数据集之间的不同之处。

在这种情况下,只需要简单地均匀化你的var_names应该就是所有需要的。例如,您可能希望将它们全部设置为air_pressure_at_sea_level

for cube in cubes:
    cube.var_name = 'air_pressure_at_sea_level'

之后,cubes.merge_cube()应该可以工作(或可能引发进一步的不兼容性)。

于 2017-07-06T14:21:32.370 回答