目錄
在學習線性代數時我們所接觸的矩陣之間的乘法是矩陣的叉乘,有這樣乙個前提:
若矩陣a是m*n階的,b是p*q階的矩陣,ab能相乘,首先得滿足:n=p,即a的程式設計客棧列數要等於b的行數。運算的方法如下圖:
當時學線性代數時老師教的更為直觀記法:
點乘則是這樣:
假如有a,b兩個矩陣,在matlab中我們實現點乘和叉乘的方式分別如下:
a.*b %表示點乘
a*b %表示叉乘
下面www.cppcns.com我們來看看python中的操作:
import numpy as np
程式設計客棧
a = np.arange(程式設計客棧1, 10).reshape(3, 3)
b = np.arange(1, 10).reshape(3, 3)
print(a)
print(a*b) # 點乘只程式設計客棧允許1*m和m*n
a1 = np.mat(np.arange(1, 10).reshape(3, 3))
a2 = np.mat(np.arange(1, 10).reshape(3, 3))
a3 = np.dot(a1, a2) # 叉乘使用dot
print(a1)
print(a3)
執行結果:
使用python操作剛好與matlab相反,使用點乘計算實際上是各陣列相同下標相乘。numpy庫中的dot函式則是為了實現陣列相乘。
Python中的Numpy矩陣
與使用陣列一樣,需要從numpy中匯入matrix或者mat模組 from numpy import matrix,mat這裡使用mat建立乙個矩陣 ss.t但是這裡的轉置並沒有改變原變數中的值,如果需要使用,需要新建立乙個變數進行賦值使用。如果需要將兩個矩陣的每個元素對應相乘時使用numpy中的m...
Python中的向量 矩陣(numpy)
numpy的向量表示是通過array陣列來實現的 在numpy中一維向量用一位陣列array 1,1,1 表示,既能表示行向量也能表示列向量,一維向量轉置後還是原來的樣子 因為儲存結構是陣列 from numpy import v1 array 0,0,0 v1t v1.transpose prin...
Numpy 中的矩陣運算
array list 建立矩陣或者高維向量,例如有 a array 1,2,3 2,3,4 傳入的引數也可是元組。min方法 a.min 0 取每列的最小值,返回乙個陣列 array 1,2,3 a.min 1 取每行的最小值,返回乙個陣列 array 1,2 a.min 得到矩陣中所有元素的最小值...