Ответ 1
Почему не просто 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])
У меня есть массив numpy, например
a = np.arange(10)
как перенести первые n
элементы в конец массива?
Я нашел эту функцию roll
, но похоже, что она делает только противоположное, которое переносит последние элементы n
в начало.
Почему не просто 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]