python中的numpy常用方法


numpy是用於處理矩陣運算非常好的工具。執行效率高,因為其底層是用的是C語句

使用numpy,需要將數據轉換成numpy能識別的矩陣格式。

基本用法:
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
名稱 描述
object 數組或嵌套的數列
dtype 數組元素的數據類型,可選,例如:int64,int16,int32,float64等,位數越高,精度越高,但也更耗內存。
copy 對象是否需要復制,可選
order 創建數組的樣式,C為行方向,F為列方向,A為任意方向(默認)
subok 默認返回一個與基類類型一致的數組
ndmin 指定生成數組的最小維度。幾維數組,默認0維數組

創建numpy矩陣的其他形式

np.zeros((3,4)):創建3行4列值都為0矩陣
np.ones((3,4)):創建3行4列值都為1矩陣
np.random.random((3,4)):創建3行4列值為0~1隨機數
np.arange(1,20,5).shape(3,4):創建3行4列維數組,數值從1到20,步長為5
np.arange(5) : 創建1維數組,數值從0至4
np.empty((3,4)):創建3行4列值為空的矩陣
np.linspace(1,10,10):創建1維數組,開始點為 1 ,終止點為 10,數列個數為 10。即元素共10個.[1,2,3,4,5,6,7,8,9.10]

np.sin(a),即計算該矩陣值的sin結果
np.cos(a)
np.tan(a)
arcsin,arccos,和 arctan 函數返回給定角度的 sin,cos 和 tan 的反三角函數。
矩陣a,矩陣b
a+b,代表逐一加法
a/b,代表逐一除法
a-b,代表逐一減法
a*b,代表逐一乘積
np.dot(a,b),a.dot(b)則代表矩陣乘法
np.argmin(a),最小值的索引
np.argmax(a),最大值的索引
mean[a]平均值
A.mean平均值,只是表達形式不一樣,與老版的average是一樣的功能
median(A),中位數,與平均值一樣的數
cumsum(A),第兩位數的累加,變成一個一維數組
diff(A),每兩個數進行減法,按行,原行-1
notzero(A),返回兩個arrage,表示不為0的索引值
sort(A),按行從小到大排序
transpose(A),矩陣的反向、向轉等同於A.T,
clip(A,3,9),所有小於3的值,變成3,所有大於9的值,變成9
索引
A[1]第一行
A[1][1]第1行第1列
A[1,1]第1行第1列,與上面一樣只是表達形式不一樣
A[2,:]第2行所有的數據
A[:,2]第2列所有的數據
A[1,1:2]第1行,從第1列到第2列的數據
遍歷
for row in A:
print row
默認迭代行數顯示行。
np沒有提供按列迭代,需要用些手段,例如將矩陣進行反轉遍歷即可實現
for column in A.T:
print colum
如果要迭代其項目,則A需要轉換成一行序列
for item in A.flag:
print item
另注意A.flatten()返回的也是一個序列,與flag類似。功能一樣


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM