numpy不是python自帶的庫,需要我們自己安裝,可以去網上找安裝教程,windows可以安裝anaconda,這樣對於好多常用的庫都可以方便使用。使用時候需要先導入:
import numpy as np
之後可以用np.***的形式使用numpy庫,下邊是一些基本的屬性:
array=np.array([[1,2,3],
[4,5,6]])
array.ndim 維度
array.shape 行列
array.size 大小
array=np.array(列表)
array=np.array(列表,dtype=np.int/np.int32/np.float/np.float32) 設定資料型別
array=np.zero((行,列)) 全零矩陣
array=np.ones((行,列)) 全1矩陣
array=np.empty((行,lie)) 空矩陣(實際是乙個非常接近0的矩陣)
array=np.arange(start,stop,step) 從start開始到stop的序列,步長為step
array=np.reshape((行,列)) 重新定義形狀
array=np.linspace(start,stop,段) 根據段得多少,自動確定步長
array=np.random.random((行,列)) 0~1之間得隨機數
np.min(array) 最小值
np.max(array) 最大值
np.sum(array) 求和
可以選擇 axis=1對列進行操作 axis=0 行操作
-:逐個元素相減
+:逐個元素相加
*:逐個元素相乘
/:逐個元素相除
**:乘方
矩陣相乘:np.dot(a,b)或者,a.dot(b)
三角函式:np.sin(a) np.tan(a) np.cos(a)
a<3: 逐個判斷a中元素和3得關係,返回true/false
np.argmin(a) 最小值索引
np.argmax(a) 最大值
np.mean(a) 平均值
np.median 中位數
np.clip(a,b,c) 將a中得值限制在b和c之間,所有小於b得都等於b,大於c得都等於c
np.cumsum() 逐步相加,返回每一步得結果
np.diff() 元素之間差
np.nonzero() 判斷非零得數,返回兩個array,第乙個是非零元素得行標,第二個是列標
np.sort() 排序
np.transpose() 轉置,或者:a.t
a[索引號] a[行][列] a[行,列] a[行,:] a[:,列] a[行,s1:s2]
for row in a: 逐行迭代
for col in a.t: 逐列迭代
a.flat a.flatten 變成一行的序列
np.vstack((a,b)) 垂直合併
np.hstack((a,b)) 水平合併
transpose 不能將行向量變成列向量,用如下的方法:
a[:,np.newaxis]
np.concatenate((a,b,c,d,……,axis=0/1) 0垂直合併,1水平合併
np.split(a,2,axis=0/1) 1是案列分開,0是按行分開 但是只能等分割
np.array.split(引數同上) 可以不等分割,4列分成三個片段
np.vsplit(a,3) 縱向分割
np.hsplit(a,2) 橫向分割
(1) = :例如a=b,實際上a,b占用同一段記憶體空間,改變a的值,b頁改變
(2) deep.copy : b=a.copy() 僅將a的值給b,不是同一段空間
機器學習之旅 重要的Python庫 Numpy
numpy numerical python的簡稱 是python科學計算的基礎包。它提供了以下功能 1 快速高效的多維陣列物件ndarray 2 用於對陣列執行元素級計算以及直接對陣列執行數 算的函式 3 用於讀寫硬碟上基於陣列的資料集的工具 4 線性代數運算 傅利葉變換,以及隨機數生成 5 用於...
nump建立陣列的幾種方法
import numpy as np 匯入numpy模組 np.arange start,end,step,type start 開始位置 end 結束位置 step 步長 type 陣列的資料型別 例如 a np.arange 0,10,1 print a 0 1 2 3 4 5 6 7 8 9 ...
numpy array的複製 老魚學numpy
看例子 a np.array 0,1,2,3 b a a 0 5 print b b 判斷a和b是否是同樣的位址 print b is a 執行結果 b 5 1 2 3 true上面的例子中,我們改變了a的值,但列印出來b中的值也被修改了,原因是a和b指向相同的物件。如果我們想要解決修改了a的值不會...