是否可以使用numpy / scipy来乘以由多项式组成的矩阵?
具体来说,我希望将120乘以120的稀疏矩阵乘以其自身看起来像+ 7 * b + c。
老实说,我并没有非常努力地做到这一点。我看到numpy中有一个多项式模块,但我没有经验。我只是希望有人看到这个,然后说'#34;显然它是可能的,做到这一点"。我之前提到的一个相关问题是:Matrices whose entries are polynomials
答案 0 :(得分:1)
我不知道稀疏,但是numpy对象数组工作正常。
In [1]: from numpy.polynomial import Polynomial as P
In [2]: a = np.array([[P([1,2]), P([3,4])]]*2)
In [3]: a
Out[3]:
array([[Polynomial([ 1., 2.], [-1, 1], [-1, 1]),
Polynomial([ 3., 4.], [-1, 1], [-1, 1])],
[Polynomial([ 1., 2.], [-1, 1], [-1, 1]),
Polynomial([ 3., 4.], [-1, 1], [-1, 1])]], dtype=object)
In [4]: np.dot(a, a)
Out[4]:
array([[Polynomial([ 4., 14., 12.], [-1., 1.], [-1., 1.]),
Polynomial([ 12., 34., 24.], [-1., 1.], [-1., 1.])],
[Polynomial([ 4., 14., 12.], [-1., 1.], [-1., 1.]),
Polynomial([ 12., 34., 24.], [-1., 1.], [-1., 1.])]], dtype=object)