3

我正在DataArray沿时间维度从多个切片创建一个,并'index must be monotonic for resampling'在尝试重新采样时偶然发现错误,我猜这表明我的时间索引未排序。concat()我吃它们的时候没有注意顺序。

# TODO: sort instead of raising an error

可以在引发错误的代码中找到。

我的问题:我将如何在 a 中对我DataArray的 s的索引进行排序DataSet?我找不到类似的东西sort_index()

4

3 回答 3

7

现在有一个可以使用的sortby()方法。

da = da.sortby('time')
于 2019-06-24T02:31:56.683 回答
5

您可以在排序索引上重新索引 -.reindex(time=sorted(dataset.time))

没有那么优雅,sort_index()但它应该可以工作

编辑:@scottclowe 指出 xarray since added .sortby(),所以使用它!http://xarray.pydata.org/en/stable/generated/xarray.DataArray.sortby.html

于 2016-12-12T03:44:46.470 回答
0

我必须添加.values才能正常工作。我的 time.values 是 datetime64[ns]。Xarray v0.10.0。

.reindex(time=sorted(dataset.time.values))
于 2018-02-16T19:39:06.613 回答