假设我的DataArray
尺寸为(a, b, b)
:
In [111]: da = xarray.DataArray(arange(2*5*5).reshape(2, 5, 5), dims=("a", "b", "b"))
如何进行转置,交换最后两个维度的顺序?
In [112]: da.T
结果
ValueError: repeated axis in transpose
与da.transpose("a", "b", "b")
一样。
我的数据数组包含协方差矩阵,因此最终维度重复是很自然的。
答案 0 :(得分:0)
这似乎有效:
db = xarray.DataArray(da.values.T, dims=("a", "b", "b"))
因此绕过了xarray。实验表明,db
仍然是与da
相同的内存视图,在我看来这是完全可取的。