我在时间维度上从多个切片创建DataArray
,并在尝试重新采样时偶然发现'index must be monotonic for resampling'
错误,我猜我的时间索引没有排序。当我concat()
加入它们时,我没有注意顺序。
# TODO: sort instead of raising an error
可以在引发错误的代码中找到。
我的问题:如何在DataArray
内对DataSet
s的索引进行排序?我找不到类似sort_index()
的内容。
答案 0 :(得分:3)
您可以重新索引已排序的索引 - .reindex(time=sorted(dataset.time))
不如sort_index()
那么优雅,但应该有效
答案 1 :(得分:1)
现在可以使用sortby()方法。
da = da.sortby('time')
答案 2 :(得分:0)
我必须添加 .values 才能排序正常工作。我的time.values是datetime64 [ns]。 Xarray v0.10.0。
.reindex(time=sorted(dataset.time.values))