您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Python如何使用Numpy庫”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Python如何使用Numpy庫”這篇文章吧。
numpy 庫處理的最基礎數據類型是由同種元素構成的多維數組(ndarray), 簡稱" 數組”,數組中所有元素的類型必須相同, 數組中元素可以用整數索引, 序號從0開始。 ndarray類型的維度(dimensions)叫做軸(axes), 軸的個數叫做秩(rank)。 一維數組的秩為1, 二維數組的秩為2, 二維數組 相當于由兩個一維數組構成
numpy 庫概述:
由于numpy 庫中函數較多且命名容易與常用命名混淆,建議采用如下方式引用numpy 庫:
import numpy as np
其中, as保留字與import一起使用能夠改變后續代碼中庫的命名空間, 有助于提高代碼可讀性。 簡單說, 在程序的后續部分中, np代替numpy。
創建一個簡單的數組后, 可以查看ndarray類型有一些基本屬性
1.ndarray.ndim
數組軸的個數,在python的世界中,軸的個數被稱作秩
2.ndarray.shape
數組的維度。這是一個指示數組在每個維度上大小的整數元組。例如一個n排m列的矩陣,它的shape屬性將是(2,3),這個元組的長度顯然是秩,即維度或者ndim屬性
3.ndarray.size
數組元素的總個數,等于shape屬性中元組元素的乘積。
4.ndarray.dtype
一個用來描述數組中元素類型的對象,可以通過創造或指定dtype使用標準Python類型。另外NumPy提供它自己的數據類型。
5.ndarray.itemsize
數組中每個元素的字節大小。例如,一個元素類型為float64的數組itemsiz屬性值為8(=64/8),又如,一個元素類型為complex32的數組item屬性為4(=32/8).
6.ndarray.data
包含實際數組元素的緩沖區,通常我們不需要使用這個屬性,因為我們總是通過索引來使用數組中的元素。
import numpy as np #引入numpy模塊 a = np.ones((4,5)) print(a) print('數據軸個數: ',a.ndim) print('每個維度的數據個數: ',a.shape) print('數據類型',a.dtype)
# 結果
[[1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1.]]
數據軸個數: 2
每個維度的數據個數: (4, 5)
數據類型 float64
小結:
函數原型:
np.array([x,y,x],dtype=int) # 從列表和元組中創建數組
功能:array函數將列表轉矩陣
import numpy as np #引入numpy模塊 array=np.array([[1,2,3], #列表轉矩陣 [4,5,6]]) print(array) print('number of dim',array.ndim) #輸出矩陣數據軸數 print('size',array.size) #輸出矩陣總元素個數
# 結果
[[1 2 3]
[4 5 6]]
number of dim 2
size 6
函數原型:
np.arange(x,y,i) # 創建一個由x到y,以i為步長的數組 np.linspace(x,y,n) # 創建一個由x到y,等分為n個元素的數組
import numpy as np #引入numpy模塊 a=np.arange(1,12,2)# np.arange從1到12,間隔為2 print(a) #從2到12,生成隨機6個數,并控制為2行3列 b=np.linspace(2,12,6).reshape(2,3) print(b)
# 結果:
[ 1 3 5 7 9 11]
[[ 2. 4. 6.]
[ 8. 10. 12.]]
功能:創建都是初始值相同元素(0,1)的數組
函數原型:
np.ones((m,n),dtype) # 創建一個m行n列的全為1的數組 np.zeros((m,n),dtype) # 創建一個m行n列的全為0的數組 np.empty((m,n),dtype) # 創建一個m行n列的全為0的數組
import numpy as np #引入numpy模塊 a=np.zeros((5,8)) #元素都是0 b=np.ones((5,6)) #元素都是1 print(a) print(b)
# 結果:
[[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]]
[[1. 1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1. 1.]
[1. 1. 1. 1. 1. 1.]]
和列表的索引差不多的
import numpy as np #引入numpy模塊 a = np.random.rand(5,3)#生成隨機5行3列數組 print(a) print('獲取第2行',a[2]) #獲取第2行 print('切片',a[1:3]) #切片, 1到3行,不包括3 print('切片',a[-5:-2:2]) #切片,從后向前,步長為2
# 結果
[[0.53469047 0.47559129 0.65865181]
[0.89942399 0.66683114 0.55181635]
[0.11989817 0.06055933 0.56880058]
[0.95744499 0.94814163 0.2155053 ]
[0.95179242 0.61544664 0.40876683]]
獲取第2行 [0.11989817 0.06055933 0.56880058]
切片 [[0.89942399 0.66683114 0.55181635]
[0.11989817 0.06055933 0.56880058]]
切片 [[0.53469047 0.47559129 0.65865181]
[0.11989817 0.06055933 0.56880058]]
提示:這里對文章進行總結:
numpy 庫還包括三角運算函數、 傅里葉變換、 隨機和概率分布、 基本數值統計、 位運算、 矩陣運算等非常豐富的功能, 在使用時可以到官方網站查詢
python基礎查表
以上是“Python如何使用Numpy庫”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。