import numpy as np
a=np.mat([1
,2,3
])#列表#matrix([[1, 2, 3]])
b=np.mat(
'1 2 3;4 5 6;7 8 9'
)#方陣
#matrix([[1, 2, 3],
# [4, 5, 6],
# [7, 8, 9]])
c= np.mat(np.eye(3)
)#陣列
#matrix([[1., 0., 0.],
# [0., 1., 0.],
# [0., 0., 1.]])
d =2
* c#matrix([[2., 0., 0.],
# [0., 2., 0.],
# [0., 0., 2.]])
np.bmat(
'c d; d c'
)#拼接
#matrix([[1., 0., 0., 2., 0., 0.],
# [0., 1., 0., 0., 2., 0.],
# [0., 0., 1., 0., 0., 2.],
# [2., 0., 0., 1., 0., 0.],
# [0., 2., 0., 0., 1., 0.],
# [0., 0., 2., 0., 0., 1.]])
b.t #轉置
#matrix([[1, 4, 7],
# [2, 5, 8],
# [3, 6, 9]])
2.1矩陣間乘法
對應元素相乘
c*d#兩個矩陣用"*"相乘 對應元素相乘
matrix([[
2.,0
.,0.
],[0
.,2.
,0.]
,[0.
,0.,
2.]]
)np.dot(c*d)
#結果與上相同
2.2向量運算
a)標量積
標量積(scalar product)是兩個向量相乘的一種方式和結果。也被稱為數量積、點積(dot product)、內積(inner product)。
按照這種方式兩個向量相乘的結果是乙個標量。
計算函式:np.dot()
c = np.mat([[
1,2]
,[3,
4]])
#np.array也可以,結果就是陣列
d = np.mat([[
5,6]
,[7,
8]])
np.dot(c, d)
#matrix([[19, 22],
# [43, 50]])
np.inner(c, d)
#matrix([[17, 23],
# [39, 53]])
#對於二維陣列,1軸是最後軸(last axes),np.inner()即將兩個陣列1軸上的元素分別對應相乘並求和,並得到最終的陣列。
b)向量積
向量積(vector product),又可以稱為叉積(cross product)或外積(outer product)
其運算結果是乙個向量,並且向量方向與原來兩個向量所構成的平面垂直
計算函式:np.cross()
v = np.array([1
,2,3
])b = np.array([9
,8,7
])np.cross(v, b)
#array([-10, 20, -10])
#np.cross()的引數不僅僅可以是一維陣列(向量),還可以是多維。
Python中矩陣建立和矩陣運算
矩陣建立和矩陣運算 矩陣建立 1 from numpy import a1 array 1,2,3 a2 mat a1 矩陣與方塊列表的區別如下 建立乙個2 4的1矩陣,預設是浮點型的資料,如果需要時int型別,可以使用dtype int 3 data5 mat random.randint 2,8...
矩陣運算及 快速冪求矩陣
矩陣運算 這裡主要是針對方陣 是很重要的乙個環節,先說加法吧 加法比較簡單,同行同列想加就可以運算的 mat operator mat a,mat b 其次就是乘法 原理也簡單 線性代數應該學過,a i k 和 b k j 和做乘積運算得到c i j mat operator mat a,mat b...
mat matlab矩陣運算及函式
矩陣的建立 一 矩陣定義 例 a 1 2 3 4 5 6 7 8 9 1 矩陣用方括號 括起 2 矩陣同一行中的元素之間用 空格 或 逗號 分隔 3 矩陣行與行之間用 分號 分開 4 直接輸入法中,分號可以用 回車 代替 二 矩陣元素賦值 1 矩陣元素的單獨賦值 例 x 5 abs x 1 2 大矩...