一、NumPy介紹
NumPy是Python科學計算的核心庫,提供了高效的多維數組對象以及相關的計算函數。NumPy底層被許多其他科學計算Python庫所依賴,例如Pandas,SciPy等。NumPy的核心是ndarray,這是一個具有矢量算術計算和複雜廣播能力的快速且靈活的容器。實際上,許多用於數組計算的Python庫都是基於NumPy的。NumPy的操作主要包括索引、切片、迭代、比較和操作等這些高效的科學計算函數。
二、NumPy數組
NumPy的核心是ndarray,這是一個具有矢量算術計算和複雜廣播能力的快速且靈活的容器。在NumPy中,ndarray是n維數組對象,其中每個元素具有相同的數據類型。Ndarray可用於運算,例如加、減、乘、除等,以及各種數學操作。
下面演示一個在NumPy中創建數組的示例:
import numpy as np # 1-D數組 a = np.array([1, 2, 3]) print(a) # [1 2 3] print(type(a)) # # 2-D數組 b = np.array([[1, 2, 3], [4, 5, 6]]) print(b) # [[1 2 3] # [4 5 6]] print(type(b)) # # 3-D數組 c = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) print(c) # [[[1 2] # [3 4]] # [[5 6] # [7 8]]] print(type(c)) #
三、NumPy數學操作
NumPy不僅僅是一個創建ndarray的庫,它還提供了各種用於數學操作的函數。下面是NumPy中的數學操作示例。
1、加法
import numpy as np a = np.array([1,2,3]) b = np.array([4,5,6]) # 數組相加 c = np.add(a,b) print(c) # [5 7 9]
2、減法
import numpy as np a = np.array([1,2,3]) b = np.array([4,5,6]) # 數組相減 c = np.subtract(a,b) print(c) # [-3 -3 -3]
3、乘法
import numpy as np a = np.array([1,2,3]) b = np.array([4,5,6]) # 數組相乘 c = np.multiply(a,b) print(c) # [ 4 10 18]
4、除法
import numpy as np a = np.array([1,2,3]) b = np.array([4,5,6]) # 數組相除 c = np.divide(a,b) print(c) # [0.25 0.4 0.5 ]
四、NumPy操作數組
NumPy可以對數組進行多種多樣的操作,包括數組操作、數組排序、數組轉換等等。下面演示NumPy中操作數組的示例。
1、數組操作
import numpy as np # 將一維數組轉化為二維數組 a = np.array([1, 2, 3, 4, 5, 6]) b = np.reshape(a, (2, 3)) print(b) # [[1 2 3] # [4 5 6]] # 數組轉置 c = np.transpose(b) print(c) # [[1 4] # [2 5] # [3 6]]
2、數組排序
import numpy as np a = np.array([3, 1, 4, 2]) # 對數組進行排序 b = np.sort(a) print(b) # [1 2 3 4] # 對數組進行倒序 c = -np.sort(-a) print(c) # [4 3 2 1]
3、數組轉換
import numpy as np # 將列錶轉化為數組 a = [1, 2, 3] b = np.asarray(a) print(b) # [1 2 3] # 將元組轉化為數組 c = (4, 5, 6) d = np.asarray(c) print(d) # [4 5 6]
五、NumPy索引和切片
NumPy中的索引和切片非常類似於列表。NumPy每個數組的索引都是從0開始的。
1、索引
import numpy as np a = np.array([1, 2, 3, 4, 5]) # 索引 print(a[0]) # 1 print(a[2]) # 3 print(a[-1]) # 5
2、切片
import numpy as np a = np.array([1, 2, 3, 4, 5]) # 切片 print(a[0:2]) # [1 2] print(a[2:]) # [3 4 5] print(a[1:4:2]) # [2 4]
六、NumPy廣播
NumPy廣播是NumPy中的一個重要功能,它能夠在不同形狀的數組之間進行算術運算。具體來說,當一組數組的形狀不一樣時,NumPy會嘗試將它們轉換為標準形狀,以便可以對它們進行算術運算。下面是NumPy廣播的示例。
import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) # 廣播 c = a * b print(c) # [ 4 10 18]
七、總結
以上是NumPy中文的相關介紹,包含了NumPy數組、NumPy數學操作、NumPy操作數組、NumPy索引和切片以及NumPy廣播等方面的內容。NumPy作為Python的科學計算的核心庫,其高效的多維數組對象以及相關的計算函數可以提供非常有效的計算功能。
原創文章,作者:RWBVG,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/360923.html