教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢(xún)/投訴熱線:400-618-4000

NumPy數(shù)組對(duì)象介紹:ndarray對(duì)象的常用屬性

更新時(shí)間:2020年11月30日10時(shí)22分 來(lái)源:傳智教育 瀏覽次數(shù):

NumPy作為高性能科學(xué)計(jì)算和數(shù)據(jù)分析的基礎(chǔ)包,它是本書(shū)介紹的其它重要數(shù)據(jù)分析工具的基礎(chǔ),掌握NumPy的功能及其用法,將有助于后續(xù)其他數(shù)據(jù)分析工具的學(xué)習(xí)。

NumPy中最重要的一個(gè)特點(diǎn)就是其N(xiāo)維數(shù)組對(duì)象,即ndarray(別名array)對(duì)象,該對(duì)象具有矢量算術(shù)能力和復(fù)雜的廣播能力,可以執(zhí)行一些科學(xué)計(jì)算。不同于Python標(biāo)準(zhǔn)庫(kù),ndarray對(duì)象擁有對(duì)高維數(shù)組的處理能力,這也是數(shù)值計(jì)算中缺一不可的重要特性。

ndarray對(duì)象中定義了一些重要的屬性,具體如表1所示。

ndarray對(duì)象的常用屬性

屬性 具體說(shuō)明
ndarray.ndim 維度個(gè)數(shù),也就是數(shù)組軸的個(gè)數(shù),比如一維、二維、三維等
ndarray.shape 數(shù)組的維度。這是一個(gè)整數(shù)的元組,表示每個(gè)維度上數(shù)組的大小。例如,一個(gè)n行和m列的數(shù)組,它的shape屬性為(n,m)
ndarray.size 數(shù)組元素的總個(gè)數(shù),等于shape屬性中元組元素的乘積
ndarray.dtype 描述數(shù)組中元素類(lèi)型的對(duì)象,既可以使用標(biāo)準(zhǔn)的Python類(lèi)型創(chuàng)建或指定,也可以使用NumPy特有的數(shù)據(jù)類(lèi)型來(lái)指定,比如numpy.int32、numpy.float64等
ndarray.itemsize 數(shù)組中每個(gè)元素的字節(jié)大小。例如,元素類(lèi)型為float64的數(shù)組有8(64/8)個(gè)字節(jié),這相當(dāng)于ndarray.dtype.itemsize

值得一提的是,ndarray對(duì)象中存儲(chǔ)元素的類(lèi)型必須是相同的。

為了讓讀者更好地理解ndarray,接下來(lái),通過(guò)一些示例來(lái)演示ndarray對(duì)象 的使用,具體代碼如下。

In [1]: import numpy as np               # 導(dǎo)入NumPy工具包
In [2]: data = np.arange(12).reshape(3, 4) # 創(chuàng)建一個(gè)34列的數(shù)組
In [3]: data 
Out[3]: 
array([[ 0, 1, 2, 3],
?     [ 4, 5, 6, 7],
?     [ 8, 9, 10, 11]])
In [4]: type(data)
Out[4]: numpy.ndarray
In [5]: data.ndim     # 數(shù)組維度的個(gè)數(shù),輸出結(jié)果2,表示二維數(shù)組
Out[5]: 2
In [6]: data.shape    # 數(shù)組的維度,輸出結(jié)果(34),表示34列
Out[6]: (3, 4)
In [7]: data.size     # 數(shù)組元素的個(gè)數(shù),輸出結(jié)果12,表示總共有12個(gè)元素
Out[7]: 12
In [8]: data.dtype    # 數(shù)組元素的類(lèi)型,輸出結(jié)果dtype('int64'),表示元素類(lèi)型都是int64
Out[8]: dtype('int64')

上述示例中,第1行代碼使用import...as語(yǔ)句導(dǎo)入numpy庫(kù),并將其取別名為np,表示后續(xù)會(huì)用np代替numpy執(zhí)行操作。
第2行代碼使用arange()和reshape()函數(shù),創(chuàng)建了一個(gè)3行4列的數(shù)組data。其中,arange()函數(shù)的功能類(lèi)似于range(),只不過(guò)arange()函數(shù)生成的是一系列數(shù)字元素的數(shù)組;reshape()函數(shù)的功能是重組數(shù)組的行數(shù)、列數(shù)和維度。
第4行代碼使用type()函數(shù)查看了數(shù)組的類(lèi)型,輸出結(jié)果為numpy.ndarray。
第5行代碼獲取了數(shù)組的維度個(gè)數(shù),返回結(jié)果為2,表示二維數(shù)組。
第6行代碼獲取了數(shù)組的維度,返回結(jié)果為(3,4),表示數(shù)組有3行4列。
第7行代碼獲取了數(shù)組中元素的總個(gè)數(shù),返回結(jié)果為12,表示數(shù)組中一共有12個(gè)元素。
第8行代碼獲取了元素的具體類(lèi)型,返回結(jié)果為dtype('int64'),表示元素的類(lèi)型為int64。

猜你喜歡:

Python常見(jiàn)異常類(lèi)型介紹 

Python正則表達(dá)式re模塊常用函數(shù)有哪些? 

什么是分布式爬蟲(chóng)?分布式爬蟲(chóng)實(shí)現(xiàn)方法

傳智教育Python數(shù)據(jù)分析課程 

0 分享到:
和我們?cè)诰€交談!