Numpy操作:
- 數組的算術和邏輯運算
- 傅里葉變換和圖形操作
- 與線性代數有關的操作,numpy擁有線性代數和隨機數生成的內置函數。
為了提高運算效率,ndarry數組值的類型默認相同,創建時自動指定默認數據類型(內存占用大的)。
numpy方法
np.dtype |
當前numpy數據的整體數據類型 |
np.itemsize | np對象中每個元素的占用空間大小,單位字節 |
np.size | 對象元素的總個數,np.shape=(3,5)則為15個 |
np.shape | np的各個維度的大小,如(3,5) |
np.ndim | np的總維度,如2維 |
np.isnan(list) | 篩選出nan值 |
np.mat | 將python列表轉換為ndarry對象 |
np.I | 矩陣求逆 |
np.T | 矩陣轉秩 |
np.multiply(x,y) | 矩陣x,y相乘 |
np.arange | 同range |
np.aragne(24).reshape((3,4) | |
np.linspace(x,y,z) | 等間距生成,x起始,y終止,z為步長 |
np.full([x,y],z) | 生成x行y列都是z的數組 |
np.random.rand(x,y,z) | 表示隨機數的shape為x,y,z...,參數也可以為空,表示只生成一個隨機數 |
np.random.randn(x,y) | 生成正態分布隨機數 |
np.random.randint(low,high,(shape)) | 整數隨機數 |
np.random.seed(s) | 給一個隨機數字固定 |
np.random.shuttle(a) | 從數組a的最外軸進行隨機洗牌 |
np.random.choice(a,size=None, replace=False,p=數組a/np.sum(b)) |
從一維數組a中以概率p抽取元素,形成size形狀新數組,replace表示是否可以重用元素,默認為False,p為抽取概率,本位置越高,抽取概率越高 |
np.sum(axis=None) | 求和,axis=0表示為列求和,axis為1表示行求和 |
np.argsort() | 返回經過排序以后的矩陣每個元素原始坐標位置 |
np.sort() | 從小到大排序 |
-np.sort() | 從大到小排序 |
np.mean(axis=None) | 求均值 |
np.average() | 加權平均,weights加權值,不設為等權重,例子[10, 5, 1],每列分別X10,X5,X1在/(10+5+1) |
np.var() | 方差,各數與平均數之差的平方的平均數 |
np.std() | 標准差 |
np.min() | 最小值 |
np.max() |
最大值 |
np.argmin() | 求數組中最小值的坐標 |
np.median() | 中位數 |
np.cusum() | 累加 |
np.cumprod() | 累乘 |
np.count_nonzero(arr>0) | 計算數組中非零值個數 |
numpy中提取數據的話可以用[1][0][0]或者[1,0,0]都可以。
Numpy一元函數
運算時足以原數組是否被改變,幾乎所有的一元函數都是生成新數組。
abs(),fabs(),sqrt(),square(),log(),log10(),ceil(),floor(),modf(),exp(),sign()
Numpy數組操作
np.transpose() | 翻轉給定數組的維度 |
np.T | 類似於transpose |
np.concatenate() | 沿着指定軸向鏈接相同形狀的兩個或多個數組 |
np.stack() | 沿着某個軸軸連接數組 |
np.split() | 沿特定的軸將數組分割為子數組 |
np.dot | 兩個數組的點積 |
np.vdot | 兩個向量的點積 |
np.inner | 兩個數組的內積 |
np.matmul | 兩個數組的矩陣積 |
np.solve np.inv np.derteminant |
求解線性矩陣方程 尋找矩陣乘法逆矩陣 數組的行列式 |