我有一个公式,可以从文件中读取为字符串:
file_eq = pd.read_excel("Equations.xlsx")
formula1 = file_eq["Formula1"]
eq1 = parse_expr(formula)
方程式在打印时如下所示:1 / sqrt(1-v ** 2 / c ** 2)。
然后我读了第二句话
formula2 = file_eq["Formula2"]
eq2 = parse_expr(formula2)
即:v ** 1.0 / c
我想用一个新变量替换第二个公式,只要它出现在第一个公式中即可。所以我尝试了这个:
x = symbols('x')
eq1 = eq1.subs(eq2, x)
但是没有任何变化。我最终应该获得的是:1 / sqrt(1-x ** 2)
另一方面,如果我手动进行操作(但由于我有很多方程式,则无法出于我的项目目的这样做),如下所示:
v = symbols('v')
c = symbols('c')
eq1 = eq1.subs(v/c, x)
我得到正确的答案。有人可以告诉我该怎么做以获得我想要的表达吗?谢谢!