維度:一組數據的組織形式
一維數據:採用線性組織(列表有序,集合無序)
列表和數組:列表中數據類型能夠不一樣,而數組數據類型必須相同
二維數據: 一維數據的組合形式,表格(列表)
多維數據由一維或者二維數據擴展而成(列表)
高維數據(字典類型或數據表示格式)python
一個強大的N維數組對象 ndarray
引用:import numpy as np
web
ndarray在程序中別名就是array
例: 計算A^2 + b^3 ,其中a和b是一維數組算法
#常規算法 a = [0, 1, 2, 3, 4] b = [9, 8, 7, 6, 5] c = [] for i in range(len(a)): c.append(a[i] ** 2 + b[i] ** 3) print(c[i], end=" ")
#使用ndarry數組對象 import numpy as np a = np.array([0, 1, 2, 3, 4]) b = np.array([9, 8, 7, 6, 5]) c = a ** 2 + b ** 3 for i in range(len(c)): print(c[i], end=" ")
數組對象能夠去掉元素間運算所須要的循環,使一維向量更像單個數據
numpy底層使用c完成,運算大規模數據能夠更快
數組對象採用相同的數據類型,有助於節省運算和存儲空間
數組
一、從python中的列表,元組等類型建立ndarray數組
二、使用Numpy中函數建立ndarray數組app
三、使用Numpy中其餘函數建立ndarray數組
svg
new_a = a.astype(new_type)
astype()方法必定會建立一個新的數組(原始數據的一個拷貝),即兩個類型一致函數
Is = a.tolist()
ui
注意: 切片的時候區間是左閉右開區間spa
import numpy as np a = np.array([0, 1, 2, 3, 4]) #索引 print(a[2]) #切片 print(a[1 : 4 : 2])
import numpy as np a = np.arange(24).reshape(2, 3, 4) #索引 print(a[1][2][3]) print(a[-1][-2][-3]) #每個維度一個索引值,逗號分隔 print(a[1, 2, 3]) print(a[-1, -2, -3]) #切片 print(a[:, 1, -3]) print(a[:, 1 : 3, :]) #步長爲2 print(a[:, :, ::2])
一、數組與標量之間的運算
······數組與標量之間的運算做用於數組每個元素3d
import numpy as np a = np.arange(24).reshape(2, 3, 4) #計算平均值 print(a.mean()) #與標量進行運算 print(a / a.mean())