前言
在python 中有時候我們用數組操作數據可以極大的提升數據的處理效率,類似于R的向量化操作,是的數據的操作趨于簡單化,在python 中是使用numpy模塊可以進行數組和矢量計算。
下面來看下簡單的例子
import numpy as np data=np.array([2,5,6,8,3]) #構造一個簡單的數組 print(data)
結果:
[2 5 6 8 3]
data1=np.array([[2,5,6,8,3],np.arange(5)]) #構建一個二維數組 print(data1)
結果:
[[2 5 6 8 3][0 1 2 3 4]]
我們也可以通過shape和dtype方法查看數組的維度和數據格式
print(data.shape)print(data.dtype)print(data1.shape)print(data1.dtype)
結果:
(5,)int32(2, 5)int32
可以看出data是一維數組,每組元素為5個,數據類型為32位int 類型
data1 為二維數組,每個組有5個元素,數據類型為32位int類型
有一個較好的區分方法是看打印結果中,中括號的層數和位置,就可以看出數組的維度,一層中括號代表一個維度。
其他的數組屬性方法還有:
array.ndim
數組的維數,一維數組結果為1,二維數組打印結果為2
array.size
數組的元素個數
array.itemsiz
數組每個元素的字節大小
接下來我們了解下數組中的數據類型:
NumPy中的基本數據類型
名稱 | 描述 |
bool | 用一個字節存儲的布爾類型(True或False) |
inti | 由所在平臺決定其大小的整數(一般為int32或int64) |
int8 | 一個字節大小,-128 至 127 |
int16 | 整數,-32768 至 32767 |
int32 | 整數,-2 ** 31 至 2 ** 32 -1 |
int64 | 整數,-2 ** 63 至 2 ** 63 - 1 |
uint8 | 無符號整數,0 至 255 |
uint16 | 無符號整數,0 至 65535 |
uint32 | 無符號整數,0 至 2 ** 32 - 1 |
uint64 | 無符號整數,0 至 2 ** 64 - 1 |
float16 | 半精度浮點數:16位,正負號1位,指數5位,精度10位 |
float32 | 單精度浮點數:32位,正負號1位,指數8位,精度23位 |
float64或float | 雙精度浮點數:64位,正負號1位,指數11位,精度52位 |
complex64 | 復數,分別用兩個32位浮點數表示實部和虛部 |
complex128或complex | 復數,分別用兩個64位浮點數表示實部和虛部 |
新聞熱點
疑難解答