Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

function request: IsoelectricPoint class private function _chargeR #2002

Closed
dobrevnm opened this issue Apr 7, 2019 · 2 comments · Fixed by #2096
Closed

function request: IsoelectricPoint class private function _chargeR #2002

dobrevnm opened this issue Apr 7, 2019 · 2 comments · Fixed by #2096

Comments

@dobrevnm
Copy link

dobrevnm commented Apr 7, 2019

Setup

I am requesting a feature for the IsoelectricPoint class from Biopython:

import sys; print(sys.version)
import platform; print(platform.python_implementation()); print(platform.platform())
import Bio; print(Bio.__version__)

(Please copy and run the above in your Python, and copy-and-paste the output)
I am using Biopython version 1.70

Expected behaviour

The IsoelectricPoint class allows calculation only of the pI of a given protein. It has a private function _chargeR, which allows calculating the charge of the protein at given pH.
It will be great if this function is not private, but it can be used as a method or to be integrated as a new class in order to be able to calculate the charge of the protein over a range of pIs.

For example, it can output:
pH Charge
4.00 11.4
4.50 4.0
5.00 -2.6
5.50 -6.2
6.00 -7.8
6.50 -8.8
7.00 -9.6
7.50 -10.2
8.00 -10.9
8.50 -11.8
9.00 -13.3
9.50 -16.2
10.00 -21.0

This will be a really nice feature.

P.S. This is my very first issue, which I am submitting. I am not sure that is the right way for requesting a feature.

@MarkusPiotrowski
Copy link
Contributor

Sounds like a sensible idea. _chargeR, as it is, cannot been made public easily, it's tightly integrated in the process of calculating the IEP. Also, the class IsoelectricPoint can hardly been used on its own, you need to invoke it with the sequence and the AA composition. It is usually called from the method isoelectric_point of class ProteinAnalysis in module SeqUtils.ProtParam.
One can either think about adding a new method, e.g. charge_at_ph either in ProteinAnalysis or in the SeqUtils module.
I may give it a try together with issue #1863 (ProteinAnalysis should handle ambiguous amino acids).

@dobrevnm
Copy link
Author

Thanks,
You are completely right!
It will be really great if it will be completely new method.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants