Numpy入門之數組運算二

條件邏輯運算

numpy使用where函數實現數組的條件選擇和替換

where(cond, arr1, arr2) cond中元素為真時,返回arr1數組中元素,否則返回arr2數組中元素

<code>arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([5, 6, 7, 8])
cond = np.array([True, False, False, True])
rssult = np.where(cond, arr1, arr2)
# arr1=[1, 2, 3, 4]
# arr2=[5, 6, 7, 8]
# cond=True, False, False, True[]/<code>

條件替換

<code>arr = np.random.randn(4, 4)
result = np.where(arr>0, 1, -1)/<code>
  • 當arr中的元素大於1時,用1替換,小於等於0時,用-1替換,返回數組只有1和-1兩個元素

where多條件判斷

where(cond1, value1, where(cond2, value2, value3))。cond1中元素為真時,返回value1 ,為假時判斷cond2,若cond2為真返回value2,為假返回value3

<code>arr = np.random.randn(4, 4)
result = np.where(arr>10, 1, np.where(arr>5, 2, 0))/<code>


分享到:


相關文章: