我试图给一个数组作为输入,并期望一个数组作为以下代码的输出。在
from sympy import symbols
from sympy.utilities.lambdify import lambdify
import os
from sympy import *
import numpy as np
text=open('expr.txt','r')
expr=text.read()
x,param1,param2=symbols('x param1 param2')
params=np.array([param1,param2])
T=lambdify((x,params),expr,modules='numpy')
data=np.genfromtxt('datafile.csv',delimiter=',')
print T(data[0],[0.29,4.5])
text.close()
但是得到以下错误。在
^{pr2}$我该如何告诉sympy它是一个数组?提前谢谢。在
1。解决方案: 你的问题是,函数T需要一个值,但是你给出了一个列表。请尝试此操作而不是
print T(data[0],[0.29,4.5])
以获取结果列表:或使用包装函数:
^{2}$2。解决方案:你必须改变你的数学表达式。不知何故,sympy无法处理列表列表,因此请尝试以下操作:
相关问题 更多 >
编程相关推荐