numpy函式記錄

2021-08-28 21:10:21 字數 1572 閱讀 2986

【功能】產生size個離散均勻分布的整數,這些整數大於等於low,小於high。預設high是none,如果只有low,那範圍就是[0,low)。如果有high,範圍就是[low,high)

n =

3a = np.random.randint(20,

40,(n,2))

.astype(np.float32)

b = np.random.randint(1,

6,(n,1))

.astype(np.float32)

c = np.hstack(

(a,b)

).astype(np.float32)

print

(a)print

(b)print

(c)

輸出:

[[35

.22.]

[37.22

.][31

.38.]

][[4

.][2

.][3

.]][

[35.22

.4.]

[37.22

.2.]

[31.38

.3.]

]

也就是直接在a的最後一列後面繼續堆疊b,所以要求a和b的行數必須相同。

與之功能相反的是np.vstack(),按行堆疊,也就是在a的最後一行下面繼續堆疊b這個要求a和b的列數必須相同。

np.max(a, axis=none, out=none, keepdims=false)

最少接收乙個引數,求序列的最大值,axis:預設為列向(也即 axis=0),axis = 1 時為行方向的最值

np.maximum:(x, y, out=none)——nms的時候用的就是這個逐位比較的函式。

x 與 y 逐位比較取其大者;最少接收兩個引數

a = np.array([1

,3,5

,7])

print

(np.

max(a)

)# 7

print

(np.maximum(a,4)

)#[4 4 5 7]

預設是從小到大(公升序):idxs = np.argsort(score)

如果想要從大到小(降序):idxs = np.argsort(score)[::-1]

鏈結 給定兩個陣列

a =[3

,3,3

,4,4

,4,5

,6,7

]b =[3

,3,4

,4]

第1題:從陣列a中刪除所有在陣列b中出現過的元素。對於上例來說,a刪除結束應該等於 [5, 6, 7].

第2題:實現 c = a - b , c應該等於[3, 4, 5, 6, 7].

第一題的解法:a = [i for i in a if i not in b]很精妙有木有?!

第二題還沒有看,以後再來寫~~

numpy使用記錄

np.maximum 傳入兩個列表,維度一致,不一致時,進行廣播。逐一比較大小,取較大值。np.max a,axis none,out none,keepdims false 求序列的最值 最少接收乙個引數 axis 預設為列向 也即 axis 0 axis 1 時為行方向的最值 np.where ...

Numpy使用記錄

np.where condition,x,y 若x,y是值,那麼就是condition正確,陣列的值變為x若不正確則數值變為y np.where condition 返回滿足條件的值的x,y值。np.amin shuzu,0 1 一維陣列找最小值,二維陣列需要指定行或列,1是找行最小的,0是找列最小...

numpy庫常用函式記錄(不斷更新)

假設有矩陣a與b,則我們有如下操作方法 1.a i 對矩陣a中的所有元素做i次方的操作並返回乙個新矩陣 2.a b 將矩陣a與矩陣b中對應元素相乘並返回乙個新矩陣 3.dot a,b 對矩陣a與矩陣b做矩陣乘法的運算 4.f a 對矩陣a中所有元素做函式f操作 5.a.sum 將a中所有元素加和並返...