import sympy
我试图在获取每个值(mod n)后找到一个矩阵。 我知道numpy数组可以正常使用但不幸的是我必须使用sympy。 有没有人知道一个内置的sympy函数可以做到这一点还是其他任何方式?谢谢!
B = sympy.Matrix([[2, 3], [4, 5]])
print(B % 3)
这是我的错误
TypeError: unsupported operand type(s) for %: 'MutableDenseMatrix' and 'int'
有numpy这是正确的输出:
B = np.array([[2, 3], [4, 5]])
print(B % 3)
>>> [[2 0]
[1 2]]
答案 0 :(得分:1)
您可以使用applyfunc将函数应用于每个元素:
B.applyfunc(lambda x : x % 3)
答案 1 :(得分:0)
对于当前的SymPy,此方法有效:
>>> Matrix([[2, 3], [4, 5]]) % 3
Matrix([
[2, 0],
[1, 2]])