二、ndarray 的屬性、數(shù)據(jù)類型

1、ndarray 的屬性

(1)ndim 數(shù)組軸(維度)的個數(shù),軸的個數(shù)被稱作秩

(2)shape 數(shù)組的維度, 例如一個2排3列的矩陣,它的shape屬性將是(2,3),這個元組的長度顯然是秩,即維度或者ndim屬性

(3)size 數(shù)組元素的總個數(shù),等于shape屬性中元組元素的乘積。

(4)dtype 一個用來描述數(shù)組中元素類型的對象,可以通過創(chuàng)造或指定dtype使用標(biāo)準(zhǔn)Python類型。不過NumPy提供它自己的數(shù)據(jù)類型。

(5)itemsize 數(shù)組中每個元素的字節(jié)大小。例如,一個元素類型為float64的數(shù)組itemsiz屬性值為8(=64/8),又如,一個元素類型為complex32的數(shù)組item屬性為4(=32/8).


#定義一個2*3*3*2的四維數(shù)組,分別求其緯度、元素個數(shù)、數(shù)據(jù)類型、元素的字節(jié)大小,并改變其形狀

arr=np.array([

? ? [

? ? ? ? [[1,2],[42,51],[75,88]],

? ? ? ? [[11,23],[44,85],[97,80]],

? ? ? ? [[1,2],[4,5],[7,8]]

? ? ],

? ? [

? ? ? ? [[13,25],[47,58],[79,81]],

? ? ? ? [[12,23],[44,55],[76,87]],

? ? ? ? [[19,20],[41,52],[73,84]]

? ? ]

])

# print(arr)

print()

# 數(shù)組的緯度

print(arr.ndim)

print()

# 數(shù)組的大?。?*3*3*2=36

print(arr.size)

print()

# 數(shù)據(jù)類型

print(arr.dtype)

print()

# 每個元素占有的字節(jié)數(shù):4*8=32,是int32類型的,共占4個字節(jié),每個字節(jié)8位,共32位。

print(arr.itemsize)

print()



# shape改變形狀

# 改變其形狀:2*3*3*2=i*j*k*l....如果為-1則讓其自動擴(kuò)展。

# 對于一個已經(jīng)存在的ndarray數(shù)組對象而言,可以通過修改形狀相關(guān)的參數(shù)/方法從而改變數(shù)組的形狀。

#? 直接修改數(shù)組ndarray的shape值, 要求修改后乘積不變。

#? 直接使用reshape函數(shù)創(chuàng)建一個改變尺寸的新數(shù)組,原數(shù)組的shape保持不變,但是新數(shù)組和原數(shù)組共享一個內(nèi)存空間,

# 也就是修改任何一個數(shù)組中的值都會對另外一個產(chǎn)生影響,另外要求新數(shù)組的元素個數(shù)和原數(shù)組一致。

#? 當(dāng)指定某一個軸為-1的時候,表示將根據(jù)數(shù)組元素的數(shù)量自動計算該軸的長度值。

print(arr.reshape(1,1,1,36))

print(arr.reshape(1,2,-1,9))



2、ndarray 數(shù)據(jù)類型

(1)創(chuàng)建numpy數(shù)組的時候可以通過屬性dtype顯示指定數(shù)據(jù)類型,如果不指定的情況下,numpy會自動推斷出適合的數(shù)據(jù)類型, 所以一般不需要顯示給定數(shù)據(jù)類型。

(2)如果需要更改一個已經(jīng)存在的數(shù)組的數(shù)據(jù)類型,可以通過astype方法進(jìn)行修改從而得到一個新數(shù)組。



a=np.array(["python","C語言","java"])

print(a)

a.dtype

a1=np.array(["python","C","java"],dtype='S8')

print(a1.dtype)



?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 基礎(chǔ)篇NumPy的主要對象是同種元素的多維數(shù)組。這是一個所有的元素都是一種類型、通過一個正整數(shù)元組索引的元素表格(...
    oyan99閱讀 5,290評論 0 18
  • 來源:NumPy Tutorial - TutorialsPoint 譯者:飛龍 協(xié)議:CC BY-NC-SA 4...
    布客飛龍閱讀 33,562評論 6 97
  • NumPy是Python中關(guān)于科學(xué)計算的一個類庫,在這里簡單介紹一下。 來源:https://docs.scipy...
    灰太狼_black閱讀 1,331評論 0 5
  • 先決條件 在閱讀這個教程之前,你多少需要知道點(diǎn)python。如果你想從新回憶下,請看看Python Tutoria...
    舒map閱讀 2,730評論 1 13
  • 一個人早年的詩作是這般乏意義,我們應(yīng)該畢生期待和采集,如果可能,還要悠長的一生;然后,到晚年,或許可以寫出十行好詩...
    四葉閱讀 933評論 0 8

友情鏈接更多精彩內(nèi)容