你還沒學會Numpy?Python中的Numpy陣列常用操作
玩資料分析、資料探勘、AI的都知道這個Python庫用的是很多的,裡面包含各種操作,在實際的DataSet的處理當中是非常常用的。

image
NumPy就是Python的其中一個擴充程式庫。它支援高階大量的維度陣列與矩陣運算,此外也針對陣列運算提供大量的數學函式庫。Numpy內部解除了Python的PIL(全域性直譯器鎖),運算效率極好,是大量機器學習框架的基礎庫。
Python學習交流群:556370268,這裡是python學習者聚集地,有大牛答疑,有資源共享!有想學習python程式設計的,或是轉行,或是大學生,還有工作中想提升自己能力的,正在學習的小夥伴歡迎加入學習。
NumPy的主要特點
●ndarray,快速,節省空間的多維陣列,提供陣列化的算術運算和高階的廣播功能。
●使用標準數學函式對整個陣列的資料進行快速運算,而不需要編寫迴圈。
●讀取/寫入磁碟上的陣列資料和操作儲存器映像檔案的工具。
●線性代數,隨機數生成,以及傅立葉變換的能力。
●整合C、C++、Fortran程式碼的工具。
今天,我們就來和大家分享幾個Numpy陣列常用操作。
Numpy陣列的建立
特殊矩陣的建立
np.ones() 函式與np.zeros() 函式可以建立任意維度的全1或全0陣列。函式引數可按照IDE的提示來進行填寫。
建立自列表
具體就是先建立具有資料的列表,然後將其轉換為陣列。如以下程式碼所示:

image
Numpy陣列的切片
由於python列表是層次巢狀的,所以索引元素方法為a[i][j];而Numpy陣列為一個整體,其索引方法為a[i, j]。在此基礎上就可以進行切片,比如:
a[i, 0:4]表示第i行,第0到第4列(不包括第4列);
a[i, :]表示第i行;
a[-1, :]表示最後一行;
a[:-1, :]表示除最後一行的所有行;
以上方法同樣可用於列。
Numpy陣列的排序
將每一行或列排序
使用np.sort() 函式或陣列物件本身的sort() 函式,其中np.sort() 不改變原陣列物件的順序,而是返回一個排序後的陣列物件。如下程式碼所示:
將每一行排序

image
將每一列排序

image
將每一行看作整體,將所有行按照某一列的順序進行排序
這裡要提一下argsort() 函式,該函式返回陣列沿指定軸排序後的索引,我們可以使用某列排序後的索引來排序所有行。
Python學習交流群:556370268,這裡是python學習者聚集地,有大牛答疑,有資源共享!有想學習python程式設計的,或是轉行,或是大學生,還有工作中想提升自己能力的,正在學習的小夥伴歡迎加入學習。
使用程式碼如下:
argsort()的用法

image
將所有行按第二列進行排序

image
Numpy陣列的拼接
np.concatenate() 函式可以提供陣列拼接操作,使用程式碼如下:

image
以上就是本篇的內容,希望能對你的學習之路有所幫助。