numpy基礎教程--clip函式的使用
阿新 • • 發佈:2018-12-15
在numpy中,clip函式的原型為clip(self, min=None, max=None, out=None),意思是把小於min的數全部置換為min,大於max的數全部置換為max,在[min,max]之間的數則不變。out返回的是一個數組,這個數值必須和原數值維度相同,不然會報錯。
呼叫clip函式的兩種方式,設存在兩個numpy.ndarray型別陣列t,t1
1.numpy.clip(t, 0, 1, t1) # 這種呼叫方式,t的值不會改變,修改後的陣列儲存在t1中
2. t1 = t.clip(1, 2) #這種呼叫方式比較簡潔明瞭,把修改後的陣列存在t1中。。推薦使用這種方式
測試程式碼如下:
import numpy as np # 隨機生成一個3行四列的矩陣,範圍是1--16 np.random.seed(10) t = np.random.randint(1, 16,(3, 4), dtype=int) t1 = np.arange(12).reshape(3, 4) t2 = np.arange(12).reshape(3, 4) print(t) print("*"*30) # 採用第一種方式,在t這個矩陣中,小於5的數改為5,大於12的數改為12,在【5,12】之間的數不變,修改後的資料儲存在t1中 np.clip(t, 5, 12, t1)print(t1) print("*"*30) # 採用第二種方式 t2 = t.clip(5, 12) print(t2)
執行結果如下圖所示: