首頁 > 軟體

NumPy對陣列按索引查詢實戰方法總結

2022-08-22 14:01:11

前期準備及前情回顧

#對於一維向量用np.arange生成以元組形式輸出從0開始的陣列([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

#對於二維向量(及多維向量),用np.arange生成以元組形式輸出從0開始到20結束的陣列,用np.reshape(4, 5)函數把一維向量轉換為4行5列的二維向量

理解:numpy的二維向量對應著Python的巢狀, 只是numpy支援更高維度的列表, 這也是numpy比Python的優勢之處

基礎索引

一維陣列

和Python的list一樣

#1.因為Python語言中有第0位,因此實際中的第一位對應著Python語言中的第0位,numpy是Python中的一個科學計算庫,因此也遵從此法則

#2.x[2 : 4]是左閉右開形式,因此實際應在4 - 1也就是第3位結束

#3.可以冒號前後省略,省略最後面就是到最後截止,此時包含最後一位, 不用 -1

我的理解:帶冒號左右都有數位的左閉右開[a, b],結束在b-1的位置,帶冒號左右數位省略的不用-1,不帶冒號的該在第幾位結束就在第幾位結束

二維陣列

注意: 切片的修改會修改原來的陣列

原因:NumPy經常要處理巨量資料, 避免每次都複製

神奇索引

其實就是:用整數陣列進行的索引, 叫神奇索引

Eg.

神奇索引的用處

-範例舉例:獲取陣列中最大的前N個數位

一維陣列

二維陣列0                                                                                                                               

                                         

我的理解:

列可以省略, 行不可以省略,如若不改變行,  用:代替,列也可以用:代替,也可以省略如若想改變行和列,用[[行a, 行b, 行c, ...], [列a,列b  ,列c]]

布林索引(常用)

一維資料

二維陣列

我的理解:

用變數直接與數位判斷輸出布林型別True 或 FalseX[]裡判斷, 輸出滿足條件的陣列

布林索引條件的組合

總結

到此這篇關於NumPy對陣列按索引的文章就介紹到這了,更多相關NumPy陣列按索引查詢內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com