numpy数组和矩阵乘法 - 返回矩阵

时间:2015-12-07 09:42:28

标签: numpy matrix-multiplication

我想以迭代的方式将数组和矩阵相乘:

.controller('filmlistcontroller', function($scope,$http ) {  $http.get('URL')
.success(function (response) {
  $scope.movies = response;
  console.log("$scope.productInfo :"+JSON.stringify($scope.movies));
}).error(function(){
})});

for i in range(n): V = np.dot(M, V) 返回一个矩阵。我显然可以将矩阵转换为numpy数组,但有没有正常的方法来执行此任务?

1 个答案:

答案 0 :(得分:1)

扩展@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 s

矩阵类被放入,因为在python 3.5之前没有独立的 matmul 运算符,人们想要一种方式来说M*V并获得矩阵乘法(在3.5中你可以说: V@M)。矩阵类引起的问题比解决的问题多。任何期望一个并获得另一个的代码都是错误的。

你正在使用np.dot做正确的事情,对于这个特殊问题,还有np.linalg.matrix_power