ginkgobioworks / geckopy Goto Github PK
View Code? Open in Web Editor NEWEnzyme-constrained genome-scale models in python
Home Page: https://geckopy.readthedocs.io/en/latest/
License: Apache License 2.0
Enzyme-constrained genome-scale models in python
Home Page: https://geckopy.readthedocs.io/en/latest/
License: Apache License 2.0
This is pending on pypi/support#1124
For users that stumble upon this issue, please install it from source, as any normal python package:
git clone https://github.com/ginkgobioworks/geckopy
cd geckopy
pip install .
# to also install pytfa (optional dep for thermodynamics integration)
pip install ".[pytfa]"
It is nice to avoid all those REV reactions but the complexity of managing this under the hood in the solver is too hard to debug and does not produce any benefits when working with previously used EC models. Moreover, it is tricky to add_proteins
and deserialize them when using this logic.
Geckopy should support 3.10.
There is a problem with the requests dependency on CI for python 3.10 that needs to be investigated, that's why it is not there for now.
Hi @carrascomj, minor issue and question on setting experimental protein concentrations in the yeast model.
Hello.
I got a ValueError in notebooks/proteomics_data_relaxations.ipynb cell 17 line 1.
Perhaps, it is lack of data about MW.
Could you tell me about error below.
Best regards.
ValueError Traceback (most recent call last)
/Users/userName/geckopy/simult_supp_material/notebooks/proteomics_data_relaxations.ipynb セル 17 line 1
----> 1 ev9_valid["MW"] = extract_proteins(None, prot_dict)["MW"]
File ~/.pyenv/versions/3.8.18/envs/geckopy/lib/python3.8/site-packages/geckopy/experimental/molecular_weights.py:194, in extract_proteins(model, all_proteins, key_fn)
192 df_prot["MW"] = 0
193 for index, row in df_prot.iterrows():
--> 194 df_prot.loc[index, "MW"] = _molecular_weight(row["Sequence"])
195 return df_prot[["uniprot", "protein_id", "MW", "Sequence"]]
File ~/.pyenv/versions/3.8.18/envs/geckopy/lib/python3.8/site-packages/geckopy/experimental/molecular_weights.py:95, in _molecular_weight(seq)
93 weight = sum(weight_table[x] for x in seq) - (len(seq) - 1) * water
94 except KeyError as e:
---> 95 raise ValueError(
96 f"'{e}' is not a valid unambiguous letter for proteins"
97 ) from None
99 return weight
ValueError: ''X'' is not a valid unambiguous letter for proteins
The API was apparently changed, causing extract_proteins() to break. Looking into fixes
geckopy
currently supports adding a global protein pool or a protein pool to a handful of specified reactions but does not easily allow for adding multiple protein pools at the same time.
Multiple protein pools are wanted in mainly two assumptions/situations:
constrain_pool()
) providing a set of proteins (like it is now, by the default all) and a parent pool (by default None
, meaning the pool is a root). If a parent is provided, the pool will be taking p_total
from the parent pool.A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.