hpa*_*tee 5 python numpy symbolic-math
我知道python执行矩阵乘法的能力.不幸的是我不知道如何抽象地这样做?所以不是一定数字,而是变量.
例:
M = ( 1 0 ) * ( 1 d )
( a c ) ( 0 1 )
Run Code Online (Sandbox Code Playgroud)
有没有办法定义a,c和d,以便矩阵乘法给我
( 1 d )
( a a*d + c )
Run Code Online (Sandbox Code Playgroud)
?
使用sympy你可以这样做:
>>> from sympy import *
>>> var('a c d A B')
(a, c, d, A, B)
>>> A = Matrix([[1, 0], [a, c]])
>>> A
Matrix([
[1, 0],
[a, c]])
>>> B = Matrix([[1, d], [0, 1]])
>>> B
Matrix([
[1, d],
[0, 1]])
>>> M = A.multiply(B)
>>> M
Matrix([
[1, d],
[a, a*d + c]])
Run Code Online (Sandbox Code Playgroud)