点积与内积
点积:矩阵乘法
内积:每个向量中同位置元素相乘,然后求和得到一个数值(标量)
向量的点积和内积相同
import numpy as np
a = np.array([1,2,3])
b = np.array([3,4,5])
print('点积:',np.dot(a,b))
print('内积:',np.inner(a,b))
a = np.array([[1,2],[3,4]])
b = np.array([[1,2,3],[4,5,6])
print('点积:',np.dot(a,b))
a = np.array([[1,2,0],[3,4,7]])
b = np.array([[1,2,3],[4,5,6])
print('内积:',np.inner(a,b))
矩阵的迹:方阵中对角线元素之和
a = np.array([[1,2,3],[2,3,4],[4,5,6]])
print("矩阵的迹:",a.trace())
矩阵的转置:
a = np.array([[1,2,3],[5,6,7]])
print('转置:',a.T)
矩阵的秩:
a = np.arange(1,10)
a.shape=(3,3)
print('秩:',np.linalg.matrix_rank(a))
a = np.array([[1,2,3],[2,4,6],[3,6,9]])
print('秩:',np.linalg.matrix_rank(a))
矩阵的行列式,必须为方阵,矩阵为满秩行列式不为零,不为满秩,行列式为零:
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
print("行列式:",np.linalg.det(a))
a = np.array([[1,2,3],[4,1,6],[3,7,9]])
print("行列式:",np.linalg.det(a))
矩阵的逆
矩阵求逆,需要为满秩的方阵
a = np.array([[1,2,3],[4,5,6],[7,8,3]])
print("逆矩阵:",np.linalg.inv(a))
矩阵的特征值和特征向量:
a = np.array([[1,2,7,3],[6,3,4,6],[2,7,2,1],[0,5,7,9]])
w,v = np.linalg.eig(a)