Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SymPy express variable in terms of another

Tags:

python

sympy

I am using SymPy lib for Python. I have two sympy symbols and expression that binds them:

x = Symbol('x')
y = Symbol('y')
expr = 2 * x - 7 * y

How can i express 'y' in terms of 'x', i.e get the equality:

y = (2/7) * x

Thanks.

like image 778
eupp Avatar asked Apr 15 '15 09:04

eupp


1 Answers

This is how you can express this equation in terms of x:

In [1]: from sympy import *

In [2]: x, y = symbols('x, y')

In [3]: expr = 2*x - 7*y

In [4]: solve(expr, y)
Out[4]: [2*x/7]

This works because if the solve() function is presented with something that is not a full equation, it assumes that the provided expression is equal to zero. In other words, writing

expr = 2*x - 7*y

above is equivalent to writing

expr = Eq(2*x - 7*y, 0)

which would tell SymPy that

2x - 7y = 0.
like image 153
Sudhanshu Mishra Avatar answered Nov 07 '22 01:11

Sudhanshu Mishra