6

numpy 配列があるとします。

>>> a 
array([0,1,2,3,4])

そして、それを「回転」して取得したい:

>>> b
array([4,0,1,2,3])

最善の方法は何ですか?

私は deque に変換してから元に戻しています (以下を参照) が、より良い方法はありますか?

b = deque(a)
b.rotate(1)
b = np.array(b)
4

3 に答える 3

12

関数を使用するだけnumpy.rollです:

a = np.array([0,1,2,3,4])
b = np.roll(a,1)
print(b)
>>> [4 0 1 2 3]

この質問も参照してください。

于 2013-04-12T11:28:46.970 に答える
2
numpy.concatenate([a[-1:], a[:-1]])
>>> array([4, 0, 1, 2, 3])
于 2013-04-12T11:19:05.477 に答える