你好,有一个原始向量,我想把前3个元素放入新向量,做一些数学运算,然后得到新的元素。把这些新的元素放入一个新向量,删除原始向量中的前3个元素,并重复这个过程,直到原始向量为空。
这是我目前所做的
OR=np.array([1,2,3,4,5,6])
new=OR[0:3]
while (True):
tran=-2*c_[new]
OR= delete(OR, [0,1,2])
new=OR[0:3]
if (OR==[]):
break
然而,它并没有正常工作,你有什么建议?
1条答案
按热度按时间n3ipq98p1#
不确定你的代码中
c_
是什么,但是不管怎样,因为numpy数组不是动态的,你不能删除或添加元素。删除元素会创建一个没有这些元素的新数组,这不是最优的。我认为你应该使用一个python deque,它有快速的pop方法从前端/后端删除一个元素,或者只是迭代原始的numpy数组,例如: