我想乘阵列和矩阵迭代的方式:numpy的阵列和矩阵乘法 - 返回矩阵
for i in range(n):
V = np.dot(M, V)
但np.dot
返回一个矩阵。我显然可以将矩阵转换为numpy数组,但有没有一种正常的方法来执行这个任务?
我想乘阵列和矩阵迭代的方式:numpy的阵列和矩阵乘法 - 返回矩阵
for i in range(n):
V = np.dot(M, V)
但np.dot
返回一个矩阵。我显然可以将矩阵转换为numpy数组,但有没有一种正常的方法来执行这个任务?
扩大在什么@hpaulj说:
我猜你的初始化代码是一样的东西
V = np.array([1,2,3])
M = np.matrix([
[1,2,3],
[4,5,6],
[7,8,9]])
很抱歉的混乱,但总的建议是:不要使用矩阵类,永远。只需使用np.array
V = np.array(...)
M = np.array(...)
np.dot正常工作有两个array
小号
Matrix类放入因为Python 3.5之前,没有独立的MATMUL经营者,人们就想了一个办法说M*V
并得到矩阵乘法(在3.5中,你可以说:[email protected]
)。矩阵类导致更多的问题比它解决。任何希望得到另一个的代码都是错误的。
你正在做使用np.dot
正确的事情,为这个特殊的问题这里还有np.linalg.matrix_power
谢谢,这有帮助。我不知道矩阵类的事情,也不知道如何将矩阵提升为权力。 –
numpy的没有“向量”;只是数组(可能是1d)。 'matrix'是一个总是2d的子类,使用它的函数通常返回相同的东西。如果它让你感到困惑,请避免使用该课程。你expresion需要编辑。 – hpaulj