【发布时间】:2018-12-14 14:45:21
【问题描述】:
我正在 python 中实现数据处理流程。我正在尝试尽可能使用符号计算(sympy 和numpy)以获得与代码一致的清晰文档。因此,当我尝试获取点积并将其用于实数矩阵时(通过lambdify),我得到了其他东西:
import numpy as np
from sympy import *
init_printing()
A = Matrix([[1, 2], [1, 100]])
B = Matrix([[3, 4], [10, 1000]])
AA = MatrixSymbol('A',2,2)
BB = MatrixSymbol('B',2,2)
mulab = lambdify([AA,BB],AA*BB)
print(mulab(A,B))
print(A*B)
给了
[7, 1010, 406, 100020]
Matrix([[23, 2004], [1003, 100004]])
Link to the live version of code
有人遇到过类似的问题吗?是否有已知的解决方法?
提前谢谢你。
【问题讨论】:
-
mulab(np.array([[1,2],[1,100]]), np.array([[3,4],[10,1000]]))有效。 -
确实!非常感谢。
标签: python numpy sympy lambdify