equilibrator-api is now available on PyPI

89 views
Skip to first unread message

Elad Noor

unread,
Oct 10, 2018, 12:34:30 PM10/10/18
to eQuilibrator Users
Dear eQuilibrator users,

I'm happy to announce that the entire functionality of eQuilibrator is now also available through an "API" which can be easily installed via PyPI:
pip install equilibrator-api

Please note, that it is not really an API, i.e. it does not communicate with the server, but rather runs its own backend locally. In other words, its FAST!

If you have scripts that require a high number of calls to eQuilibrator (e.g. you want to parameterize your model with equilibrium constants) please use
this API rather than the website. It will be infinitely faster for you, and will prevent our server from overloading.

It has mainly been tested on Linux, but since it's pure python, it should work on other platforms. Any feedback will be highly appreciated.

All the best, and may all your reaction be chemically balanced!

Elad

Dan Olson

unread,
Nov 14, 2018, 12:00:27 PM11/14/18
to eQuilibrator Users
Hi Elad,

I'm interested to try doing Pathway Analysis via the equlibrator-api. Is that something that can be done?

Thanks,
Dan

Jue Wang

unread,
Nov 14, 2018, 12:51:45 PM11/14/18
to Dan Olson, eQuilibrator Users
Meant to send this to the group and not just dan:

I partially got this working by generating the MDF csv on the server and parsing that via the api. I couldn’t get preprocessing of a natural language pathway file though. See my earlier thread. I think there is a potential bug or dependency problem. 

--
You received this message because you are subscribed to the Google Groups "eQuilibrator Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to equilibrator-us...@googlegroups.com.
To post to this group, send email to equilibra...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/equilibrator-users/661c46dd-bb60-4dec-91b9-74f9f6386542%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Elad Noor

unread,
Nov 14, 2018, 2:02:06 PM11/14/18
to eQuilibrator Users
Hi Dan,

As of now, the package equilibrator-api reflects only the MDF pathway analysis. You can try using this command line script on the SBtab file that is generated using the website:
and you should probably edit this script to get more info from the result object mdf_res.

If you want to run ECM analysis, you'll need to also install the enzyme-cost-minimization package (also using pip). I don't have a command-line script for it, but I hope the examples are clear enough, e.g.:

Jue, the function pathway.Pathway.from_csv_file() is supposed to produce the same result as using the website to generate the MDF configuration file. Indeed, it does not perform the NL identification of reactions from compound names at the moment. Please let me know if there are bugs in it.

Best,
Elad

On Wednesday, November 14, 2018 at 6:51:45 PM UTC+1, Jue Wang wrote:
Meant to send this to the group and not just dan:

I partially got this working by generating the MDF csv on the server and parsing that via the api. I couldn’t get preprocessing of a natural language pathway file though. See my earlier thread. I think there is a potential bug or dependency problem. 
On Wed, Nov 14, 2018 at 9:00 AM Dan Olson <dan...@gmail.com> wrote:
Hi Elad,

I'm interested to try doing Pathway Analysis via the equlibrator-api. Is that something that can be done?

Thanks,
Dan

On Wednesday, October 10, 2018 at 12:34:30 PM UTC-4, Elad Noor wrote:
Dear eQuilibrator users,

I'm happy to announce that the entire functionality of eQuilibrator is now also available through an "API" which can be easily installed via PyPI:
pip install equilibrator-api

Please note, that it is not really an API, i.e. it does not communicate with the server, but rather runs its own backend locally. In other words, its FAST!

If you have scripts that require a high number of calls to eQuilibrator (e.g. you want to parameterize your model with equilibrium constants) please use
this API rather than the website. It will be infinitely faster for you, and will prevent our server from overloading.

It has mainly been tested on Linux, but since it's pure python, it should work on other platforms. Any feedback will be highly appreciated.

All the best, and may all your reaction be chemically balanced!

Elad

--
You received this message because you are subscribed to the Google Groups "eQuilibrator Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to equilibrator-users+unsub...@googlegroups.com.
To post to this group, send email to equilibrator-users@googlegroups.com.

Dan Olson

unread,
Nov 15, 2018, 2:17:46 PM11/15/18
to eQuilibrator Users
I'm getting an error when I try to parse the SBtab file. I run the command pp = Pathway.from_sbtab(filename), and I get the error message SBtabError('The TableID of the SBtab is not defined!').
I'm using the example SBtab file generated by the eQuilibrator website. I checked this file with the online SBtab Online Validator (https://www.sbtab.net/sbtab/default/validator#) and I didn't get any error messages.
I looked at the content of the SBtab file and did not see anything called "TableID."

Is there a way to make the from_sbtab() function ignore the lack of a TableID?

Thanks,
Dan

Elad Noor

unread,
Nov 15, 2018, 5:26:01 PM11/15/18
to eQuilibrator Users
Hi Dan,

I'm sorry about this. The SBtab specification has changed a bit last week and I've updated my code for the API and the website. Apparently, the changes haven't been pushed yet to the online version.
If you want to try the updated example, you can find it here:
Or just edit the headers of each table in the SBtab to have a TableID (it can be the same as the TableName).
Anyhow, I will update the website tomorrow, I hope it will solve the issue.

Elad Noor

unread,
Nov 16, 2018, 4:45:36 AM11/16/18
to eQuilibrator Users
Okay, the website has been updated with the new format of SBtab.
Please update your equilibrator-api version (to 0.1.7) using pip, download the example from the website again, and let me know if the issue has been solved.

Dan Olson

unread,
Nov 16, 2018, 10:44:22 AM11/16/18
to eQuilibrator Users
That worked. Thanks!

I see that you're reading the SBtab file into DataFrames. Is there an easy way to access those DataFrames?

-Dan

Elad Noor

unread,
Nov 16, 2018, 10:54:58 AM11/16/18
to eQuilibrator Users

I'm not sure if I understand your question. The DataFrames are only created for facilitating the I/O of the model, the Pathway object later holds the data in other structures, depending on the data type.
You can, however, easily use the sbtab package directly to access the data in the SBtab file, and also convert it into DataFrames.
Reply all
Reply to author
Forward
0 new messages