更新時間:2023-07-25 來源:黑馬程序員 瀏覽量:
NumPy中提供了一個重要的數(shù)據(jù)結構——ndarray(又稱為array)對象,該對象是一個N維數(shù)組對象,可以存儲相同類型、以多種形式組織的數(shù)據(jù)。數(shù)組是由相同類型的數(shù)據(jù)按有序的形式組織而成的一個集合,組成數(shù)組的各個數(shù)據(jù)稱為數(shù)組的元素。與Python中的數(shù)組相比,ndarray對象可以處理結構更復雜的數(shù)據(jù)。
ndarray對象中定義了一些重要的屬性,部分常用屬性及其說明如表所示。
ndarray對象中定義的部分常用屬性及其說明
ndim、shape、dtype屬性是比較難理解的,下面分別對這些屬性進行詳細的介紹。
1.ndim屬性
ndim屬性表示數(shù)組的維度。例如,一維數(shù)組的維度是1,二維數(shù)組的維度是2。
在NumPy中,維度稱為軸,軸的個數(shù)稱為秩。例如,3D空間中有一個點的坐標為[1.2,3].[1.2,3]是一個一維數(shù)組,該數(shù)組中軸的個數(shù)為1,也就是說秩為1。
一維數(shù)組只有一個軸,其內部的所有數(shù)據(jù)沿軸方向依次排列;二維數(shù)組的結構類似于表格,它一共有沿行方向和列方向的兩個軸,其中沿行方向的軸是編號為0的軸,沿列方向的軸是編號為1的軸;三維數(shù)組的結構類似立方體,它一共有沿長、寬、高方向的3個軸,這3個軸依次對應著編號1、2、0。為加深大家對軸的理解,接下來,我們通過圖來描述一維、二維、三維數(shù)組的軸。
一維、二維、三維數(shù)組的軸
2.shape屬性
shape屬性表示數(shù)組的形狀,也就是數(shù)組中各維度的大小,該屬性的值為一個形如(行,列)的元組。例如,有一個m行n列的二維數(shù)組,該數(shù)組的shape屬性的值為(m,n)。
3.Imtype 屬性
dype屬性表示數(shù)組中元素的類型,它實質上是一個說明數(shù)據(jù)類型的對象。NumPy中提供了眾多數(shù)據(jù)類型對象,常用的數(shù)據(jù)類型及其說明如表所示。