【发布时间】:2016-11-16 04:42:35
【问题描述】:
从另一个 numpy 数组中删除元素的最佳方法是什么?基本上我在np.delete() 之后,数组的顺序无关紧要。
import numpy as np
a = np.array([2,1,3])
print a
b = np.array([4,1,2,5,2,3])
b = np.delete(b, a) # doesn't work as desired
print b # want [4,5,2]
迭代a 的元素对于大型数组来说非常慢。
【问题讨论】:
-
你为什么要
[4,5,2]?2也在a中,所以应该删除它,b将是[4,5]。 -
@Evert 我试图只删除
a中元素的第一个实例。正如所写的a有两个2。 -
如果
a = [2,2,1,3],b == [4,5]?如果a = [2,2,2,1,3]怎么办?你的案子目前的情况太不具体了。 -
@Evert 是的,在你的第一种情况下,我想要
b == [4,5]。在第二种情况下,我已经知道a只包含b中的元素。 -
@JohnCrow
a是否也会有重复值,例如:a = [2,2,1,3]?
标签: python arrays performance numpy