[英]Compare two arrays in Numpy
在數組total= np.full((3,3),[0, 1, 2])
和數組a = np.array([1],[0],[1])
,我期待得到一個new_array
:
array([[0, 2],
[1, 2],
[0, 2]])
您可以使用列表理解和np.delete
:
import numpy as np
total= np.full((3,3),[0, 1, 2])
a = np.array([[1],[0],[1]])
new_array = np.array([np.delete(l, i) for l,i in zip(total,a)])
結果
array([[0, 2],
[1, 2],
[0, 2]])
可以應用面具和重塑:
import numpy as np
total= np.full((3,3),[0, 1, 2])
a = np.array([[1],[0],[1]])
a = np.repeat(a, 3, axis=1)
new_total = total[total!=a].reshape(3, 2)
>>> print(new_total)
[[0 2]
[1 2]
[0 2]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.