【发布时间】:2013-11-07 01:24:49
【问题描述】:
我有一个 3-D NumPy 数组,例如
a = np.random.random((2,3,5))
我想转置最后两个轴,即
b = a.transpose(0,2,1)
但是,我不想要步履蹒跚的观点!我想实际复制数组并将其重新排序在内存中。实现这一目标的最佳方法是什么?
【问题讨论】:
我有一个 3-D NumPy 数组,例如
a = np.random.random((2,3,5))
我想转置最后两个轴,即
b = a.transpose(0,2,1)
但是,我不想要步履蹒跚的观点!我想实际复制数组并将其重新排序在内存中。实现这一目标的最佳方法是什么?
【问题讨论】:
实际上,b 的步幅与 a 不同。
更喜欢使用ascontiguousarray,它会在需要时复制内存。而copy 将始终复制内存。
【讨论】: