我想在Python中实现simplex方法,所以我需要对数组使用高斯消元。经常会出现分数,为了更加清晰和精确,我希望保留分数形式而不是使用浮点数。 我知道'分数'模块,但我努力使用它。我使用这个模块编写了我的代码,但数组总是返回浮动。是不是可以打印一个数组里面的分数? 在这个简单的例子:如何使用numpy数组与分数?
>>> A
array([[-1., 1.],
[-2., -1.]])
>>> A[0][0]=Fraction(2,3)
>>> A
array([[ 0.66666667, 1. ],
[-2. , -1. ]])
我想有array([[ 2/3, 1. ], [-2. , -1. ]])
似乎numpy的总是切换到浮
如果你想确切有理数的矩阵工作,[sympy(http://docs.sympy.org/dev/tutorial/matrices.html)可能会更好地为您服务。 – user2357112
谢谢你的回答,但我不会使用sympy,因为我已经用numpy开始了我的代码。我不知道sympy,所以我记住下一个代码! – Jkev
我在矩阵上测试了sympy,它非常非常慢: https://stackoverflow.com/questions/45796747/are-sympy-matrices-really-that-slow – Wikunia