我不确定在sympy中使用的将MutableDenseMatrix转换为numpy.arraynumpy.matrix的方法是否是当前的良好做法。

我有一个像这样的符号矩阵:

g = sympy.Matrix( [[   x,  2*x,  3*x,  4*x,  5*x,  6*x,  7*x,  8*x,   9*x,  10*x],
                   [x**2, x**3, x**4, x**5, x**6, x**7, x**8, x**9, x**10, x**11]] )

我正在转换为numpy.array:
g_func = lambda val: numpy.array( g.subs( {x:val} ).tolist(), dtype=float )

在这里,我得到给定值x的数组。

SymPy中有更好的内置解决方案吗?

谢谢!

最佳答案

看起来最简单:

np.array(g).astype(np.float64)

如果跳过astype方法,则numpy将创建一个类型为'object'的矩阵,该矩阵不适用于常见的数组操作。

关于python - 将SymPy矩阵转换为numpy数组/矩阵的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17069864/

10-12 00:24
查看更多