如何在numpy中进行循环移位

2024-05-11 08:25:45 发布

您现在位置:Python中文网/ 问答频道 /正文

例如,我有一个numpy数组

a = np.arange(10)

如何将第一个n元素移到数组的末尾?

我找到了这个^{}函数,但它似乎只做了相反的事情,将最后的n元素移到了开头。


Tags: 函数numpy元素np数组事情末尾arange
2条回答

你可以用负位移

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]

为什么不直接用负数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])

相关问题 更多 >