您好,登錄后才能下訂單哦!
這篇文章主要講解了“Numpy對象與類型怎么應用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Numpy對象與類型怎么應用”吧!
Numpy 就類似于一個數組,與Python的列表不同的是:Python的列表可以放入不同類型的數據,這樣的好處是兼容性強,但是劣勢是計算速度變慢,在大數據的處理時,我們需要高效率,所以Numpy便出現了;相比Python對象,Numpy的對象叫做ndarray
;ndarray
的特點:
一般情況下,ndarray中的所有元素,類型都相同;當然,也可以不同;
ndarray 中每個元素都有相同大小的存儲空間;
創建一個 ndarray 只需調用 NumPy 的 array 函數即可,如下:
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
參數說明:
名稱 | 描述 |
---|---|
object | 數組或嵌套的數列 |
dtype | 數組元素的數據類型,可選 |
copy | 對象是否需要復制,可選 |
order | 創建數組的樣式,C為行方向,F為列方向,A為任意方向(默認) |
subok | 默認返回一個與基類類型一致的數組 |
ndmin | 指定生成數組的最小維度 |
舉例如下:
import numpy as np # 導入包 a = np.array([1,2,3,4]) #一維數組建立 print ('a:',a) # 輸出: a: [1 2 3 4] b = np.array([[1,2,3,4],[5,6,7,8]]) # 二維數組 print ('b:',b) # b: [[1 2 3 4] # [5 6 7 8]] c = np.array([[1,2,3,4],[5,6,7,8]],ndmin=3) # 指定最小緯度 print ('c:',c) # c: [[[1 2 3 4] # [5 6 7 8]]] d = np.array([[1,2,3,4],[5,6,7,8]],dtype=complex) #制定數據類型 print ('d:',d) # d: [[1.+0.j 2.+0.j 3.+0.j 4.+0.j] # [5.+0.j 6.+0.j 7.+0.j 8.+0.j]]
由于是專門用來數據分析的包,故numpy支持非常多種數據類型,可根據需求選擇合適的數據類型,可以大大提高運行速度;常用的數據類型如下: 備注:調用numpy 數據類型時,可以通過np.數據類型來調用,例如:np.int8,np.float16 等;
名稱 | 類型代碼 | 描述 |
---|---|---|
bool_ | ? | 布爾型數據類型(True 或者 False) |
int_ | 默認的整數類型(類似于 C 語言中的 long,int32 或 int64) | |
int8 | i1 | 字節(-128 to 127) |
int16 | i2 | 整數(-32768 to 32767) |
int32 | i4 | 整數(-2147483648 to 2147483647) |
int64 | i8 | 整數(-9223372036854775808 to 9223372036854775807) |
uint8 | u1 | 無符號整數(0 to 255) |
uint16 | u2 | 無符號整數(0 to 65535) |
uint32 | u4 | 無符號整數(0 to 4294967295) |
uint64 | u8 | 無符號整數(0 to 18446744073709551615) |
float_ | float64 類型的簡寫 | |
float16 | f2 | 半精度浮點數,包括:1 個符號位,5 個指數位,10 個尾數位 |
float32 | f4 / f | 單精度浮點數,包括:1 個符號位,8 個指數位,23 個尾數位 |
float64 | f8 / d | 雙精度浮點數,包括:1 個符號位,11 個指數位,52 個尾數位 |
complex | complex128 類型的簡寫,即 128 位復數 | |
complex64 | c8 | 復數,表示雙 32 位浮點數(實數部分和虛數部分) |
complex128 | c16 | 復數,表示雙 64 位浮點數(實數部分和虛數部分) |
object | O | Python 對象類型 |
string_ | S | 固定長度字符串,如長度為20的字符串,為S20 |
a = np.array([1.1,2,3,4],dtype = np.float64) print ('a:',a) # float64 類型 b = np.array([[1,2,3,4],[5,6,7,8]],dtype = 'f4') print ('b:',b) # float32 類型
使用astype來改變數組的數據類型
a = np.array([1.1,2.3,3.5,4.7],dtype = np.float64) b = a.astype(np.int_) print(b) # [1 2 3 4] 輸出變為了整型
數據類型對象(numpy.dtype 類的實例)用來描述與數組對應的內存區域是如何使用;使用方法如下:
numpy.dtype(object, align, copy)
參數說明:
名稱 | 描述 |
---|---|
object | 要轉換為的數據類型對象 |
align | 如果為 true,填充字段使其類似 C 的結構體 |
copy | 復制 dtype 對象 ,如果為 false,則是對內置數據類型對象的引用 |
舉例如下:
student = np.dtype([('name','S10'), ('age', 'i1'), ('marks', 'f4')]) a = np.array([('abc', 21, 50),('xyz', 18, 75)], dtype = student) print(a) # [(b'abc', 21, 50.) (b'xyz', 18, 75.)]
感謝各位的閱讀,以上就是“Numpy對象與類型怎么應用”的內容了,經過本文的學習后,相信大家對Numpy對象與類型怎么應用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。