2
所以,我有一個目標numpy的陣列,說由條件獲取到numpy的數組元素的引用
a = np.array([3, 7, 9, 3, 5])
和我有一個條件陣列,例如
c = np.array([False, False, True, True, False])
,我想通過c
>>> b
array([9,3])
使得如果我改變它,a
也改變以獲得陣列b
,指定。例如:
>>> b[0]=2
>>> b
array([2,3])
>>> a
array([3, 7, 2, 3, 5])
我已經試過類似的東西:
>>> b = np.compress(c,a)
>>> b
array([9, 3])
>>> b[0]=2
>>> b
array([2, 3])
>>> a
array([3, 7, 9, 3, 5])
但它不工作,a
仍然是相同的,np.compress()
返回一個副本。此外,我有這個代碼沒有成功:
b=a[np.where(c)]
是否有返回參考,不可複製的np.compress()
任何模擬? 謝謝!
'b'永遠是副本;從來沒有看法。蒙版陣列可能是「即時」應用蒙版的最佳方式。 – hpaulj