我有一個numpy數組,例如 
 
a = np.arange(10) 
如何將第一個n元素移動到數組的末尾? 
 
我找到了這個roll函數,但似乎只是反過來,它將最後n個元素移到了開頭。 
 
2 個答案: 
答案0 :(得分:37) 
 
為什麼不只是roll帶有負數? 
 
- import numpy as np
 
 - a = np.arange(10)
 
 - np.roll(a,2)
 
 - array([8, 9, 0, 1, 2, 3, 4, 5, 6, 7])
 
 - np.roll(a,-2)
 
 - array([2, 3, 4, 5, 6, 7, 8, 9, 0, 1])
 
  複製代碼 
 
你可以使用負移位 
 
- a = np.arange(10)
 
 - print(np.roll(a, 3))
 
 - print(np.roll(a, -3))
 
  複製代碼 
返回 
[7,8,9,0,1,2,3,4,5,6] 
[3,4,5,6,7,8,9,0,1,2] 
 |