np.array(range(left, right)).reshape(row, col)
# left, right分别是范围的最小最大值,np.array()使之变成一维向量
# np.reshape()可以改变向量矩阵形状,前提是大小必须符合元素数量
除对角线外其他项都是0的矩阵
v = np.array([1, 8, 4])
np.diag(v)
对角线都为1的矩阵
np.eye(n) # 直接填对角线的项数,生成n×n的矩阵
两个矩阵对应位置上的元素进行相乘
a = np.array(range(4)).reshape(2, 2)
b = np.array(range(4, 8)).reshape(2, 2)
a * b
通常意义上的矩阵乘法
np.dot(a, b)
不改变输出格式,但性质发生变化
np.asmatrix(a)
v, e = np.linalg.eig(a) # a为对角矩阵
对对角线上各个值的幂运算
以下求3次方举例
a*a*a
a**3
(a**2)*a
a@a@a
np.linalg.inv(a)
a = np.matrix(a)
a.I
Unlike matrix, asmatrix does not make a copy if the input is already a matrix or an ndarray
对原矩阵改动某一元素时,asmatrix跟随变化,而matrix不会改变
x = np.array([[1, 2], [3, 4]])
matrix = np.matrix(x)
asmatrix = np.asmatrix(x)
print(matrix)
print(asmatrix)
# 改变原矩阵某一元素
x[0][0] = 5
print(matrix)
print(asmatrix)