繁体   English   中英

使用numpy进行矩阵乘法

[英]matrix multiplication using numpy

我有两个矩阵

a = matrix(((1.4) ,(2.5) ,(1.96),(6.25),(12.25))

b = matrix(((1 ,1,1,1,1),(2,2,2,2,2)))

当我将这些矩阵相乘时

product = b*a

我遇到错误

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.6/dist-packages/numpy-1.7.0-py2.6-linux-i686.egg/numpy/matrixlib/defmatrix.py", line 330, in __mul__
    return N.dot(self, asmatrix(other))
ValueError: matrices are not aligned

请帮我解决这个问题

矩阵乘以错误的形状。 我认为您可能打算将a定义为:

a = matrix(((1.4,),(2.5,),(1.96,),(6.25,),(12.25,)))

与以下内容相同:

a = matrix((1.4,2.5,1.96,6.25,12.25)).T

要么

a = matrix(((1.4),(2.5),(1.96),(6.25),(12.25))).T

请注意, 逗号才是元组。 括号只是为了避免语法上的歧义。 在最后一个示例中,最里面的括号不执行任何操作,并由python的解析器删除。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM