0
給定兩個具有相同長度的numpy
數組,我需要從兩個數組中刪除那些相同的索引元素爲零。例如,給定我需要獲得從兩個數組中刪除具有相同索引的零元素
a = [5 9 2 0 1 4 9 8 1]
b = [1 0 3 1 2 4 2 3 2]
即僅在兩個陣列過零值所述元件從兩個陣列除去陣列
a = [5 9 2 0 1 4 9 0 8 1]
b = [1 0 3 1 2 4 2 0 3 2]
。我試過這種方法
import numpy as np
a = np.random.randint(0, 10, 10)
b = np.random.randint(0, 10, 10)
a_z_idx = [a != 0]
b_z_idx = [b != 0]
ab_z_idx = a_z_idx and b_z_idx
a = a[ab_z_idx]
b = b[ab_z_idx]
但是這也消除了,而不是僅僅取消了在他們兩人的零元素那些要麼數組中的零元素。
我的實際數組有幾百萬個元素,所以我追求最有效的方法。
偉大的答案Divakar!你知道這些方法是否明顯比其他方法快嗎? – Gabriel