一、何為numpy庫
NumPy是Python裡面最重要的基礎性庫之一,可以讓Python支持大量的高端數值計算,是科學計算和數據分析領域的必備工具。NumPy用來存儲和處理大型矩陣和數組,提供介面,讓用戶可以在它們的上面進行數值運算。
NumPy的安裝十分方便,使用pip就可以安裝。在命令行中輸入如下命令,即可完成安裝。
pip install numpy
安裝完成後,在Python文件中使用import語句進行調用NumPy。
import numpy as np
二、NumPy中的基礎數據類型
NumPy的基礎數據類型是ndarray,即n維數組,是一個表格類型的數據結構,它裡面存儲了大量的數值數據。ndarray有三個非常重要的屬性:shape、dtype和size。shape代表數組的維度,可以是一維,二維等等;dtype代表數組中的元素類型;size表示數組中含有的元素個數。
以下是創建ndarray的幾個方法。
1、直接創建
# 首先需要導入numpy模塊 import numpy as np # 定義一維數組 arr1 = np.array([1, 2, 3, 4, 5]) # 定義二維數組 arr2 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
2、使用特定的函數
# 創建一個全零的3x3矩陣 zeros = np.zeros((3,3)) # 創建一個全1的5個元素的一維數組 ones = np.ones(5) # 創建單位矩陣 eye = np.eye(3)
三、NumPy中的數組計算
NumPy提供了非常豐富的數組計算功能。數組之間的計算可以使用基本的算術運算符(如 +、-、*、/),而且可以對數組中的每個元素進行計算。
以下是幾個對數組進行計算的示例。
1、逐元素計算
import numpy as np arr1 = np.array([1, 2, 3, 4, 5]) arr2 = np.array([2, 4, 6, 8, 10]) # 逐元素相加 result = arr1 + arr2 # 逐元素相減 result = arr2 - arr1 # 逐元素相乘 result = arr1 * arr2 # 逐元素相除 result = arr2 / arr1
2、數學計算函數
NumPy還提供了很多數學計算函數,可以直接進行調用。以下是一些常見的數學計算函數。
import numpy as np # 求平方根 result = np.sqrt(arr1) # 求正弦值 result = np.sin(arr1) # 求反正切值 result = np.arctan(arr1) # 求指數 result = np.exp(arr1) # 求自然對數 result = np.log(arr1)
四、NumPy數組的索引和切片操作
NumPy數組的索引和切片操作跟Python的列表非常相似。ndarray對象是基於多維數組的,所以需要用方括弧來指定每個維度的索引。同時,可以使用切片操作來獲取數組中的部分數據。
以下是一些示例代碼。
1、對一維數組進行索引和切片操作
import numpy as np arr1 = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9]) # 獲取第3個元素 print(arr1[2]) # 輸出3 # 獲取第2到4個元素(不包括第4個) print(arr1[1:3]) # 輸出[2 3] # 獲取第一個到倒數第二個元素(不包括倒數第一個) print(arr1[:-1]) # 輸出[1 2 3 4 5 6 7 8]
2、對二維數組進行索引和切片操作
import numpy as np arr2 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # 獲取第2行第3列的元素 print(arr2[1, 2]) # 輸出6 # 獲取第1行的所有元素 print(arr2[0, :]) # 輸出[1 2 3] # 獲取第2和第3行的所有元素 print(arr2[1:, :]) # 輸出[[4 5 6] [7 8 9]]
五、NumPy中的矩陣運算
NumPy還提供了大量的矩陣運算功能,可以使用dot()函數來進行矩陣乘法的運算。在使用此函數之前,需要保證兩個矩陣的行列數正確才能進行乘法運算。
以下是一些示例代碼。
1、進行矩陣乘法運算
import numpy as np arr1 = np.array([[1, 2, 3], [4, 5, 6]]) arr2 = np.array([[7, 8], [9, 10], [11, 12]]) # 進行乘法運算 result = np.dot(arr1, arr2) print(result) # 輸出[[ 58 64] # [139 154]]
2、進行矩陣的轉置
import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6]]) # 進行轉置 result = arr.T print(result) # 輸出[[1 4] # [2 5] # [3 6]]
六、總結
本文簡單介紹了NumPy的基礎知識,包括了NumPy庫的定義和作用、ndarray數組的屬性和創建方法、數組的計算、數組的索引和切片操作、以及矩陣的運算。對於初學者來說,這些基礎知識是非常重要的,是使用NumPy進行科學計算和數據分析的前置知識。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/288483.html