python-Numpy學習之(一)ndim、shape、dtype、astype的用法


參考網址:https://blog.csdn.net/Da_wan/article/details/80518725

本文介紹numpy數組中這四個方法的區別ndim、shape、dtype、astype。

1.ndim

ndim返回的是數組的維度,返回的只有一個數,該數即表示數組的維度。

2.shape

shape:表示各位維度大小的元組。返回的是一個元組。

對於一維數組:有疑問的是為什么不是(1,6),因為arr1.ndim維度為1,元組內只返回一個數。

對於二維數組:前面的是行,后面的是列,他的ndim為2,所以返回兩個數。

對於三維數組:很難看出,下面打印arr3,看下它是什么結構。

先看最外面的中括號,包含[[1,2,3],[4,5,6]]和[[7,8,9],[10,11,12]],假設他們為數組A、B,就得到[A,B],如果A、B僅僅是一個數字,他的ndim就是2,這就是第一個數。但是A、B是(2,3)的數組。所以結合起來,這就是arr3的shape,為(2,2,3)。

將這種方法類比,也就可以推出4維、5維數組的shape。

3.dtype

dtype:一個用於說明數組數據類型的對象。返回的是該數組的數據類型。由於圖中的數據都為整形,所以返回的都是int32。如果數組中有數據帶有小數點,那么就會返回float64。

有疑問的是:整形數據不應該是int嗎?浮點型數據不應該是float嗎?

解答:int32、float64是Numpy庫自己的一套數據類型。

4.astype

astype:轉換數組的數據類型。

int32 --> float64        完全ojbk

float64 --> int32        會將小數部分截斷

string_ --> float64        如果字符串數組表示的全是數字,也可以用astype轉化為數值類型

注意其中的float,它是python內置的類型,但是Numpy可以使用。Numpy會將Python類型映射到等價的dtype上。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM